javascript - Android 将未知字符串传递给 javascript

标签 javascript android webview

我正在使用 Android 调用接受字符串参数的 JavaScript。

这在正常情况下有效,如下所示:

String statement = "Hello World!";
webview.loadUrl("javascript:echo('" + statement + "')");

这个接口(interface)后面只是对Android Toast API的调用,没什么特别的。

现在,因为我不知道什么 String 会传递给这个“echo”函数,我想知道是否有办法确保这个 JavaScript 函数无论接收到什么 String 都会被执行?

例如,我想输入一个单引号(')。为了正确调用 JavaScript 函数,我需要用反斜杠 () 转义引号。

然后还有许多其他字符需要处理。

有人知道如何解决这个问题吗?

最佳答案

不太清楚你为什么要这样做,但引号是唯一需要转义的字符。所以你可以这样做:

statement = statement.replaceAll("'","\\'");

关于javascript - Android 将未知字符串传递给 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20591228/

相关文章:

javascript - 为什么浏览器会阻止特定的 Ajax 请求?

javascript - 使用 CSS 媒体查询选择 JavaScript 元素

android - 应用更新主题订阅

java - Android - 将多个 ASyncTaskLoader 类作为 InnerClasses 放入 "manager"类中

android - 显示 youtube 视频时 Webview 崩溃

javascript - 代码 : "ER_BAD_FIELD_ERROR", errno : 1054, sqlState : "42S22", 索引:0 MySQL/Angular/Sessions

javascript - 通过 CSS 在列表元素之间设置 DIV 容器

Android虚拟设备打开后立即关闭

javascript - 有没有办法在 ios 和 android 应用程序中使用公共(public)文件夹?

javascript - 如何在浏览器中打开外部 WebView 链接?