我试图通过Casper.js自动填写表单。表单显示在模式弹出窗口中,并且已经填充了数据,因此我只需单击提交标签。
我有以下代码:
this.echo(this.getHTML('#modalContent'))
if(!casper.exists('.green_btn white font_18 arrow_btn_pad rad_5')) {
this.echo('not found')
} else {
this.echo('found')
}
this.clickLabel('Submit')
登录到控制台的modalContent
div的html包含:
<a href="javascript:void(0);" onclick="$.shactivity.eoiSubmit('expressval');return false;" class="green_btn white font_18 arrow_btn_pad rad_5">
其中expressval
是表单的ID。
由于html包含选择器,因此下一行应打印&#39;找到&#39;,但它会打印“未找到”&#39;。更重要的是,clickLabel('Submit')
不会返回任何错误,但表单也未提交。我做错了什么?
答案 0 :(得分:0)
CasperJS接受CSS3 selector strings,你的不正确。你想使用这样的东西:
this.echo(this.getHTML('#modalContent'))
if(!casper.exists('.green_btn.white.font_18.arrow_btn_pad.rad_5')) { //changed
this.echo('not found')
} else {
this.echo('found')
}
this.clickLabel('Submit')