gpt4 book ai didi

java - Android 网页 View 中的自动填充字段

转载 作者:行者123 更新时间:2023-12-02 05:49:23 24 4
gpt4 key购买 nike

我正在创建一个在 WebView 中显示外部网站的应用程序。我想用我的自定义值填充该 Web View 的用户名和密码字段,但我没有找到任何成功的方法:

这是网站页面源代码 fragment :

<form name="LoginForm" method="post" action="https://xyz" onsubmit="document.LoginForm.Submit.disabled=true;">

<input type=hidden name="XXX" value="@@@@www@">
<input type=hidden name="YYY" value="xyz.0">

<tr>
<td width="50%">Username
<font class=starmand align="absmiddle">*</font></td>
<td width="50%"><input type="text" name="userName" class="txtfld" autocomplete="off" size="12"/>
</td>
</tr>
<tr>
<td>Password
<font class=starmand align="absmiddle">*</font></td>
<td><input type="password" name="password" size="12" value="" class="txtfld">
</td>
</tr>
<tr>
<td align="right" colspan="2"><input type="submit" name="Submit" value="GO" onclick="return xyz();" class="btnSubmit"></td>

</tr>
</table></td>
</table>
</tbody>
</form>

这是我的 Android 代码 fragment :

 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
browser = (WebView)findViewById(R.id.webView1);
browser.setWebViewClient(new MyBrowser());
browser.getSettings().setLoadsImagesAutomatically(true);
browser.getSettings().setJavaScriptEnabled(true);
browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
browser.loadUrl(AppConstants.LOGIN_URL);
}


private class MyBrowser extends WebViewClient {

@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
String TAG="onPageFinished";
Logger.i(TAG,"Called..");
if(url.equals(AppConstants.LOGIN_URL)) {
Logger.i(TAG,"Login page load done..");
updateStatus("Login Page Loaded..!",TYPE_GREEN);
browser.loadUrl(getLoginScript("USER_NAME","PASS_WORD"));
}
}

}

public static String getLoginScript(String userName,String password){
return "javascript: {" +
"document.getElementsByName('userName').value = '"+userName +"';" +
"document.getElementsByName('password').value = '"+password+"'; };";
}

运行上面的代码:

-我得到一个新网页,其中文本为 USER_NAME

请帮助我!

我需要让这个工作......

提前致谢。

最佳答案

您似乎正在将其作为“USER_NAME”的默认值加载。对我来说,如果该字段填充文本 "USER_NAME" 会更有意义,因为您将该字符串作为参数传递,如下所示:

browser.loadUrl(getLoginScript("USER_NAME","PASS_WORD"));

关于java - Android 网页 View 中的自动填充字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23710977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com