Android webview自动填充iFrame值

时间:2013-08-26 10:19:30

标签: javascript android

提前谢谢。 我想知道,我如何从webview中加载的页面访问iFrame,并在iframe表单中设置一些值。

我尝试使用parent.getElementById(?),但它对我没有帮助......

    myWebView.loadUrl("https://nesach.justice.gov.il/mashkonot/forms/fMashIyunMishkunContent.aspx");
    myWebView.getSettings().setJavaScriptEnabled(true);
    myWebView.setWebViewClient(new WebViewClient() {
        public void onPageFinished(WebView view, String url) {
            int user=5466687,user2=1122;
            view.loadUrl("javascript:var f = window.frames['frmAddBakasha'];alert('Hello');");
            view.loadUrl("javascript:alert('Frame element loaded');");

            view.loadUrl("javascript:document.getElementById('MisparBakashot').value = '"+user+"';");
            view.loadUrl("javascript:var iframe = document.getElementsByTagName('frmAddBakasha');");
            view.loadUrl("javascript:var doc = iframe.contentWindow.document;");                
            view.loadUrl("javascript:doc.body.style.backgroundColor = 'green';");                                         

        }
    });

1 个答案:

答案 0 :(得分:1)

由于安全限制,除非iframe属于同一个域,否则您将无法访问iframe个子元素。

例如,请参阅elementFromPoint

  

如果指定点的元素属于另一个文档(例如,iframe的子文档),则返回调用该方法的文档的DOM中的元素(在iframe情况下,iframe本身)。< / p>

我相信,同样适用于getElementById