这是我要填写表格的html页面
<form action="validate.asp" method="post">
<input type="TEXT" name="f_uid" size="20" value=""/><br />
<input type="PASSWORD" name="f_pwd" size="20"/><br />
<input name="BUILDKEY" type="HIDDEN" value="42779"><br/>
<input type="SUBMIT" value="SubmitTest">
</form>
&#13;
这是我在UWP应用程序上使用的代码
string[] cmds = new string[] { $"document.getElementsByName(\"f_uid\")[0].value = testuser",
$"document.getElementsByName(\"f_pwd\")[0].value = testpass",
"document.getElementsByTagName('button')[0].click();"};
await test.InvokeScriptAsync("eval", cmds);
它仅在用户名字段上工作,但密码和提交按钮不单击
我尝试更改click();提交();但这也不起作用..
还有其他选择吗?比如调用validate.asp而不是?或其他什么..
或者我做错了吗?
答案 0 :(得分:0)
使用以下代码
string cmds = string.Format(@"document.getElementsByName('f_uid')[0].value = 'testuser';
document.getElementsByName('f_pwd')[0].value = 'testpass';
document.getElementsByTagName('button')[0].click();"};
await test.InvokeScriptAsync("eval", new string[] { cmds });
来到
我做错了吗?
我认为您必须使用;
结束每一行,如下所示的代码
string[] cmds = new string[] { @"document.getElementsByName('f_uid')[0].value = testuser;",
@"document.getElementsByName('f_pwd')[0].value = testpass;",
@"document.getElementsByTagName('button')[0].click();"};
await test.InvokeScriptAsync("eval", cmds);
以下是LogIn到StackOverflow的示例应用:StackOverFlow LogIn