在打开selenium并填写表单后,我无法让Selenium IDE点击我的某个网络表单上的“提交”按钮。我正在使用clickAndWait命令并通过其ID识别按钮:
<td>clickAndWait</td>
<td>id=ctl00_ContentPlaceHolder1_OSVFHResults_btSave</td>
<td></td>
有趣的是,如果我编写的脚本只是打开表单并单击提交按钮而不填写,我没有任何问题。在我要求Selenium填写表格之后,我的问题就出现了。此外,如果我尝试手动单击提交按钮,如果填写表单的Selenium脚本在我的手动输入之前运行,则它不起作用。如果我手动打开并填写表单,我点击提交没有问题,Selenium适用于网站上所有其他表单的提交按钮。有人有什么想法吗?
答案 0 :(得分:2)
您可以尝试type
一个,而不是使用typeKeys
命令填充表单。它模拟指定元素上的击键事件,就像您按键键入值并可能启用提交按钮一样。
答案 1 :(得分:1)
听起来有些与click()
无关的javascript事件(例如mouseover
或onkeydown
)附加到一个或多个表单字段,并负责启用提交按钮。
你必须通过查看firebug之类的源代码或使用javascript调试器来查看正在触发的确切事件。然后修改您的Selenium脚本以确保触发相同的事件。
答案 2 :(得分:1)
在输入表单中的值后,只需尝试“ClickAtandWait”而不是“clickandWait” ..我也会遇到问题一次,它只会举手一次.. < / p>
selenium.clickAtandWait("locator", "position");
如果您知道确切的“位置”,请将其保留为空字符串。