网页无法识别由HtmlUnit设置的文本

时间:2015-08-07 15:15:28

标签: java web htmlunit

我正在尝试使用HtmlUnit来填充一个在其输入上放置一些条件的表单(例如,一个输入的值必须至少为3个字符长)。我使用HtmlInput的setValueAttribute方法来填充表单,但是当它点击提交按钮时,网站会显示一条错误消息,指出给定值实际上不是3个字符。似乎当通过HtmlUnit设置该值时,网站无法识别给定值的长度。有什么方法可以解决这个问题吗?

以下是我使用的代码:

HtmlInput intputBoxName = (HtmlInput) page.getFirstByXPath("//input[@id='usernamePart']");
intputBoxName.setValueAttribute("value");

我还发现,如果我在设置值之前使用inputBoxName.click(),则根本不会设置该值。

1 个答案:

答案 0 :(得分:2)

您应该使用inputBoxName.type("value"),因为setValueAttribute不会触发JavaScript句柄。