2

Androidでphonegapプラグインアプリケーションを作成しました。sendJavaScript APIPhonegapを使用して、Java コードから JavaScript に文字列値を送信しようとしています。しかし、私は問題に直面しています。文字列に一重引用符が含まれている場合、sendJavaScript機能しません。一重引用符がなければ、完全に正常に機能します。以下は、Plugin クラスの Java ファイル内のコードです。

String result = "Any text except single quote ";
String SendJS = "javascript:" + SuccessCallBack + "('" + JSONObject.quote(result) +    "')"; 
sendJavaScript(SendJS);

SuccessCallBack- JavaScript のコールバック関数。

result- JavaScript コールバックに渡す文字列。

結果の文字列に一重引用符が含まれている場合、sendJavaScript は機能しません。

助言がありますか?

4

1 に答える 1

2

http://commons.apache.org/lang/api-2.4/org/apache/commons/lang/StringEscapeUtils.html(JSまたはHTMLのいずれか)を使用して、文字列を送信する前にエスケープします。JS側でunescape(string)を使用してエスケープを解除すると、問題が解決するはずです。

于 2012-09-11T07:39:38.640 に答える