相关疑难解决方法(0)

对于loadUrl上的javascript getElementById,Android WebView始终返回null

我尝试从android客户端应用程序填写webview中的表单.我知道它应该如何工作,但getElementById总是为我返回null.我在不同的网站上试过.

以下是www.google.com的示例.

MyWebView view = new MyWebView(this);
view.getSettings().setJavaScriptEnabled(true);
view.loadUrl("http://www.google.com");
view.setWebViewClient(new WebViewClient() {
    @Override
    public boolean shouldOverrideUrlLoading(WebView v, String url) {
        v.loadUrl(url);
        return true;
    }
    @Override
    public void onPageFinished(WebView v, String url) {
        v.loadUrl("javascript:document.getElementById('mib').value = 'aaa';");              
    }
});
setContentView(view);
Run Code Online (Sandbox Code Playgroud)

和MyWebView类(仅供参考).

class MyWebView extends WebView {
    Context context;
    public MyWebView(Context context) {
        super(context);
        this.context = context;
    }
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        // do some multi touch stuff
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

我总是得到错误:

09-01 04:35:26.453: I/chromium(2962): [INFO:CONSOLE(1)] "Uncaught TypeError: Cannot set …
Run Code Online (Sandbox Code Playgroud)

javascript java android webview

9
推荐指数
2
解决办法
2万
查看次数

标签 统计

android ×1

java ×1

javascript ×1

webview ×1