【问题标题】:Selecting option inside Android WebView using JavaScript使用 JavaScript 在 Android WebView 中选择选项
【发布时间】:2013-01-11 16:04:54
【问题描述】:

我正在尝试在 Android 上加载并显示的 WebView 中填充表单。 填充<input > 字段可以正常工作...我在 WebViewClient 的 onPageFinished 方法中执行此操作:

public void onPageFinished(WebView view, String url) {
    view.loadUrl("javascript:document.getElementById('input1').value='"+desired_value+"';"        );
}

但是,尝试为<select id="select1" ... > 标签选择一个选项似乎并没有像我预期的那样工作:

view.loadUrl("javascript:document.getElementById('select1').selected='1';");

我也试过了:

view.loadUrl("javascript:document.getElementById('select1').value='1';");

有人知道如何做到这一点吗? 如果我在 WebView 表面上按下选择,Android 会弹出一个选项的选择菜单,并且在选择时,WebView 会使用所选值更新,所以我希望可以做到这一点。此外,附加的 onChange JavaScript 函数也会执行,这也是我想要实现的。任何帮助将不胜感激。 (我必须提到我没有广泛的 JavaScript 知识,所以如果有一些明显的简单答案,我深表歉意)。 谢谢

【问题讨论】:

  • 你试过了吗:javascript:document.getElementById('select1').value=1; ?

标签: javascript android select webview android-webview


【解决方案1】:

这似乎确实有效:

view.loadUrl("javascript:document.getElementById('select1').value='1';");

然后手动调用onChange函数,不会被赋值触发:

view.loadUrl("javascript:(function() {select1_changed(1);})()");

可能有更好的方法,但目前这对我有用。 锡

【讨论】:

    【解决方案2】:

    试试这个 -

    wbv.loadUrl("javascript:(function() 
    {document.getElementById('select1').value='1'})()");
    

    【讨论】:

      猜你喜欢
      • 2013-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-20
      • 1970-01-01
      • 1970-01-01
      • 2017-06-28
      • 2011-10-24
      相关资源
      最近更新 更多