2011-11-09 13 views
1

次のように私は私のJavaScript関数にStrutsのプロパティを渡しています:Strutsでシングルクォートを削除するには?

facemode('<s:property value="caseemailnumber" />'); 

私は'[email protected]'としてemailnumberを取得しています。私は一重引用符を削除したい。これどうやってするの?

facemode('<s:property value="caseemailnumber.replaceAll('\'','')" />'); 

私は今日、ほぼ同じ問題に直面し、それは狂気私を運転していた。このよう

+0

あなたは 'caseemailnumber'プロパティ自体がすでに一重引用符で値を返していて、生成されたJS出力が' facemode( '' [email protected] '') 'として無効になったと言っていますか?まあ、ええと、あなたは ''の周りの単一引用符を削除することができますが、最初にその単一引用符はプロパティ値で何をしていますか?それ以外の場合、私は本当になぜそれらを削除する必要があります表示されません。 – BalusC

+0

はい、一重引用符がcaseemailnumberから返されます。 ファイヤーバグで私はfacemode( '' [email protected] '')として見ることができます。そのため、エラーを投げます。 クライアント側から一重引用符を削除する必要があるか、サーバー側から一括引用符を削除する必要がありますか。 –

+0

これらの単一引用符は、最初にプロパティ値に属しません。 BeanやDBにプロパティをどのように格納したかを修正する必要があります。 – BalusC

答えて

1

は、replaceAll文字列メソッドと文字'のためのバックスラッシュを使用してください。それが役に立てば幸い。

0

は、タグのescapeJavaScript属性を使用します

facemode('<s:property value="caseemailnumber" escapeJavaScript="true"/>'); 

をBalusCが言うようにしかし、それは最初の場所で正しく保存されなければならない - あなたのデータをスクラブ考えます。

関連する問題