在Android Webview中加载远程HTML页面后添加JavaScript代码

8
我在Android中的Webview遇到了问题。 我正在使用一个包含2个片段的应用程序;第一个片段有一个EditText,第二个片段有一个webview。
调用修改加载页面的DOM的javascript函数,是否可以将Edittext的字符串传递给webview中加载的页面?
例如,在webview加载后:
webview.loadUrl("http://google.it");

我想在谷歌搜索页面的编辑框中插入一个从Java传递过来的字符串;作为第一步,我尝试了以下操作:

webview.setWebViewClient(new WebViewClient() {  
            @Override  
            public void onPageFinished(WebView view, String url)  
            {  
               webview.loadUrl("javascript:(function() {alert();})()");  
            }  
        });  

但是警报没有显示。
感谢任何反馈,并为我的不完美英语道歉。
3个回答

9

试试这个:

webview.getSettings().setJavaScriptEnabled(true);
webview.setWebChromeClient(new WebChromeClient());
webview.setWebViewClient(new WebViewClient() {
   @Override
   public void onPageFinished(WebView view, String url){
       String javaScript ="javascript:(function() {alert();})()";
       webview.loadUrl(javaScript);
   }
});
webview.loadUrl(url);

这是源代码的链接

0

这对我有用

  webview.loadUrl("javascript:function sagvelgardkharast() { document.getElementById('gkFooter').style.display='none'; " +
                        " document.getElementById('gkBottom5').style.display='none'; " + 
                        " } sagvelgardkharast(); ");

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接