繁体   English   中英

单击带有HtmlUnit的javascript按钮

[英]Clicking a javascript button with HtmlUnit

我正在尝试使用HTMLUnit单击HTML按钮。 按钮代码:

<input class="Submit" value="I Accept." type="submit" name="ButtonSubmit" id="button" onclick="/*some looong js code*/" tabindex="16">

我的密码

final HtmlSubmitInput baton = form.getInputByName("ButtonSubmit");
HtmlPage page2 = baton.click();

我尝试使用click(); 方法,但不起作用。

同时按回车键:

final HtmlTextInput textinput = form.getInputByName("SomeInput");
//filling input
HtmlPage page = textinput.type(KeyboardEvent.DOM_VK_ENTER);

我认为问题在于js代码。 它只是不使用HTMLUnit运行。 (使用浏览器手动填写表格可以正常工作。)感谢您的帮助。

确保在代码中启用JS

webClient.getOptions()setJavaScriptEnabled(真)。 webClient.getOptions()。setThrowExceptionOnScriptError(false);

我不知道这是否可以解决您的问题,但是为了解决这个问题,我做了两件事有不同的处理(JavaScript似乎没有点击元素):

  • 使用form.getElementById("button")代替getInputByName
  • 使用Thread.sleep等待(大约350毫秒似乎是魔幻数字)效果发生

即使这样,我仍然会看到不确定的测试失败,因为单击的影响有时似乎没有发生。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM