【发布时间】:2014-08-07 15:37:24
【问题描述】:
我正在使用 Casper.js 来自动提交表单。表单的 onSubmit 方法返回 false 并在发送数据之前运行一些 javascript(onclick 回调),所以我必须使用 clickLabel,而不是 fill。数据已预先填充,我只需单击“提交”按钮。当我使用 Casper 做clickLabel('Submit') 时,数据没有提交。我做错了什么?
编辑 - 这是标签的标记:
<a class="green_btn white font_18 arrow_btn_pad rad_5" onclick="$.shactivity.eoiPremiumSubmit('expressval');return false;" href="javascript:void(0);">
<span class="fl cursor_p">Submit</span>
<span class="white_right_arrow mar_l_7 block fl mar_t_6 cursor_p"></span>
</a>
【问题讨论】:
-
您是否真的尝试过使用
fill或fillSelectors并设置提交标志?在我的测试中,提交处理程序运行。请显示表单标记。如果提交按钮是input元素,那么您将不得不click它。 -
不会“填写”只是提交表单而不是执行 onclick 回调?
-
不,它不会运行
onclick处理程序,而只会运行表单的onsubmit处理程序。与填写表格并按 Enter 的方式相同。如果你真的想点击标签,那么你应该提供标签的必要标记。clickLabel的功能非常有限,因此可能存在问题。 -
为问题添加了标签标记