用Javascript填写ASP表单(Android Studio)

时间:2018-09-30 17:02:21

标签: javascript java android asp.net android-studio

我刚接触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 个答案:

答案 0 :(得分:0)

问题可能与您的网络视图设置有关。在Webview初始化之后,放置以下代码。

WebSettings settings = myWebView.getSettings();
settings.setDomStorageEnabled(true);
settings.setJavaScriptEnabled(true);
myWebView.setWebViewClient(new WebViewClient()());
myWebView.setWebChromeClient(new WebChromeClient());

如果要从JS调用Java端的某些方法,则需要使用 JavascriptInterface 。看看this link

关于这一行: document.getElementByTagName ,您正在调用的函数不存在,请尝试以下操作:

document.getElementsByTagName('some_name')[0].value = 'some_value';