Casperjs点击按钮不起作用
问题描述:
我可以填写这个网站的输入,但我不能点击提交按钮,已经尝试了很多方法。如果您可以如此善意地测试您提出的解决方案,请。谢谢Casperjs点击按钮不起作用
var casper = require('casper').create();
casper.start("https://alsea.interfactura.com/RegistroDocumento.aspx?opc=Starbucks");
casper.then(function() {
casper.sendKeys('#ctl00_Main_RegistroClienteTicket1_txtTienda', '12345');
casper.click('input[type="submit"][id="ctl00_Main_RegistroClienteTicket1_btnContinue"]');
casper.capture("test.png");
});
casper.run();
答
经过测试了一下,我得到了一个静态等待的解决方案。您可以用waitForSelector()替换它:
var casper = require('casper').create();
casper.start("https://alsea.interfactura.com/RegistroDocumento.aspx?opc=Starbucks");
casper.then(function() {
casper.sendKeys('#ctl00_Main_RegistroClienteTicket1_txtRFC', 'VSC162114Q6A');
casper.sendKeys('#ctl00_Main_RegistroClienteTicket1_txtTicket', '208456752');
casper.sendKeys('#ctl00_Main_RegistroClienteTicket1_txtTienda', '38445');
// set via jQuery because of the date format
casper.evaluate(function() {
$("#ctl00_Main_RegistroClienteTicket1_txtDate").val('01/01/2017');
});
});
casper.then(function() {
casper.capture("test1.png");
});
casper.then(function() {
casper.evaluate(function() {
$("#ctl00_Main_RegistroClienteTicket1_btnContinue").click();
});
});
// You have to wait for dynamic loaded stuff here
casper.wait(5000);
casper.then(function() {
casper.capture("test2.png");
});
casper.run();
感谢您的数据。它使研究更容易(如果你想再次删除你的评论,我再次改变它)。 ;)
更新了我的文章。它现在有效。 :) – dasmelch
你真棒dasmelch,它很棒!如果有什么机会我们可以一起工作,请让我知道 – Donovan