Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
字符串替换不';当通过android webView JavascriptInterface传递字符串时不起作用_Java_Javascript_Android_Webview - Fatal编程技术网

字符串替换不';当通过android webView JavascriptInterface传递字符串时不起作用

字符串替换不';当通过android webView JavascriptInterface传递字符串时不起作用,java,javascript,android,webview,Java,Javascript,Android,Webview,当我通过JavaScriptInterface将Java字符串传递到android webView时,我遇到了一个字符串替换问题 以下是webView中的HTML(utf-8文件): <html> <head> <script type="text/javascript"> a=window.MyAndroid.getPicEncStr(); //get string from Java side.

当我通过JavaScriptInterface将Java字符串传递到android webView时,我遇到了一个字符串替换问题

以下是webView中的HTML(utf-8文件):

 <html>
  <head>
    <script type="text/javascript">

        a=window.MyAndroid.getPicEncStr(); //get string from Java side.        

        function getValue(){    
            b="ue";     

            if(a==b) {
                d="match";
            } else {
                d="not match";
            }

            c=d+":"+a.replace("u","0")+b.replace("u","0");
            document.getElementById("test").innerHTML=c;           
        }
    </script>   
  </head>
  <body>
    <span id="test">test</span>
  </body>
</html>
当我调用webView.loadUrl(“javascript:getValue()”)时,span(“id”=“test”)中的结果是“match:ue0e”,无论我是否从“unicode”转换为“utf-8”

基本上字符串“a”等于字符串“b”,但replace函数对a不起作用,只对b起作用

有人能帮我吗


谢谢。

看来我找到了解决问题的方法:

<html>
  <head>
    <script type="text/javascript">

        a=window.MyAndroid.getPicEncStr(); //get string from Java side.        

        function getValue(){    
            b="ue";     

            if(a==b) {
                d="match";
            } else {
                d="not match";
            }
            a=new String(a); //<-- force convert java string to javascript string.
            c=d+":"+a.replace("u","0")+b.replace("u","0");
            document.getElementById("test").innerHTML=c;           
        }
    </script>   
  </head>
  <body>
    <span id="test">test</span>
  </body>
</html>

a=window.MyAndroid.getPicEncStr()//从Java端获取字符串。
函数getValue(){
b=“ue”;
如果(a==b){
d=“匹配”;
}否则{
d=“不匹配”;
}

a=新字符串(a);//尝试在utf8中生成webView.loadUrl。嗨,Andrew,我试过了,但是结果还是一样的。
<html>
  <head>
    <script type="text/javascript">

        a=window.MyAndroid.getPicEncStr(); //get string from Java side.        

        function getValue(){    
            b="ue";     

            if(a==b) {
                d="match";
            } else {
                d="not match";
            }
            a=new String(a); //<-- force convert java string to javascript string.
            c=d+":"+a.replace("u","0")+b.replace("u","0");
            document.getElementById("test").innerHTML=c;           
        }
    </script>   
  </head>
  <body>
    <span id="test">test</span>
  </body>
</html>