我对 Android Studio 很陌生,但我已经尝试了很多东西,现在我不得不问。我想用 android studio 填写一个 ASP.NET 网站表单。“经典”的 Javascript 方法在这里似乎不起作用。myWebView.loadUrl("javascript: document.getElementByTagName('Benutzername').value = 'test'");也myWebView.loadUrl("javascript:document.getElementByName('<%= Benutzername.ClientId %>').value = '"+username+"';");不工作:/输入字段的 HTML 文本是:<input name="Benutzername" type="text" style="text-align: center; width:120px;border:solid 1px #6699CC;" onkeypress="{if (event.keyCode == 13){document.form1.Passwort.focus()};}" value="">在源代码中,我可以找到此代码:<td width="109" height="30"><div align="right" class="Stil12"><font face="Arial, Helvetica, sans-serif"><font size="3"><font size="2">Passwort:</font></font></font></div></td> <td width="126"><input name="Passwort" type="password" style="text-align: center; width:120px;border:solid 1px #6699CC;" onKeyPress="{if (event.keyCode == 13){if (Feldpruefung()) submit();};}" value=""> </td>但我只是无法让它工作,而且“模拟按键”似乎也不是一种可用的方式......有人有一些想法吗?
1 回答
长风秋雁
TA贡献1757条经验 获得超7个赞
问题可能与您的 webview设置有关。在您的 webview 初始化后放置以下代码。
WebSettings settings = myWebView.getSettings();
settings.setDomStorageEnabled(true);
settings.setJavaScriptEnabled(true);
myWebView.setWebViewClient(new WebViewClient()());
myWebView.setWebChromeClient(new WebChromeClient());
如果您想从 JS 调用 Java 端的某些方法,则需要使用JavascriptInterface。看看这个链接。
关于这一行:document.getElementByTagName,你调用的函数不存在,试试这个:
document.getElementsByTagName('some_name')[0].value = 'some_value';
添加回答
举报
0/150
提交
取消