在Android Webview中加载远程html页面后添加javascript代码

use*_*588 6 javascript android webview

Android中的webview存在问题.我正在使用一个包含2个片段的应用程序; 第一个是EditText,第二个是webview.

是否可以通过调用修改加载页面的DOM的javascript函数来传递webview中加载的页面中的Edittext?

例如,在webview中加载后:

webview.loadUrl("http://google.it");
Run Code Online (Sandbox Code Playgroud)

我希望在google搜索页面的edittext中插入一个从java传递的字符串; 我尝试了这个作为第一步:

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

但是不显示警报.

感谢您的任何反馈,并抱歉我的英语不完美.

Joy*_*ard 7

试试这个:

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);
Run Code Online (Sandbox Code Playgroud)

这是源的链接!


小智 0

Alert() 有点棘手。您需要捕获它并将其转换为 Toast。

看看这个: https: //code.google.com/p/apps-for-android/source/browse/Samples/WebViewDemo/src/com/google/android/webviewdemo/WebViewDemo.java