我在android上制作了一个phonegap插件应用程序。我正在尝试使用Phonegap中的sendJavaScript API
将Java代码中的String值发送到JavaScript。但我遇到了一个问题。如果字符串包含单引号,则sendJavaScript
不起作用。没有单引号,它完全正常。以下是Plugin类的java文件中的代码。
String result = "Any text except single quote ";
String SendJS = "javascript:" + SuccessCallBack + "('" + JSONObject.quote(result) + "')";
sendJavaScript(SendJS);
SuccessCallBack
- JavaScript中的回调函数。
result
- 要传递给JavaScript Callback的字符串。
如果结果字符串包含单引号,则sendJavaScript不起作用。
有什么建议吗?
答案 0 :(得分:2)
在使用http://commons.apache.org/lang/api-2.4/org/apache/commons/lang/StringEscapeUtils.html(JS或HTML之一)发送字符串之前转义字符串。在JS方面使用unescape(string)进行Unescape,这应该可以帮助你。