Casperjs:提交表单后需要用waitforselector点击按钮

时间:2016-07-27 11:23:45

标签: casperjs

casperjs新手。在需要操作多个表单的站点上工作。需要使用正在运行的电子邮件ID登录,然后我需要点击第二页上的按钮,它不起作用。

var casper = require('casper').create({
pageSettings: {
loadImages: false,
loadPlugins: false,
userAgent: 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36'
}

});

//第一步是登录。 casper.start("https://www-mysite.com");

//这一步工作正常

casper.then(function(){
console.log("Login using username and password");
this.evaluate(function(){
    document.getElementById("textfield").value="abc@domain.com";        
    document.getElementById("continue").click();
});

});

//它捕获屏幕 - 工作正常

casper.then(function(){
console.log("Make a screenshot and save it as Login.png");
this.capture('Login.png');

});

//登录页面后,导航到包含继续按钮的列表页面

// waitForSelector控制台显示它意味着dom检索提到的按钮,然后为什么这个按钮点击事件没有执行。

casper.waitForSelector('#continue_1EE59AB98E7A1976E0530100007F737A_88z67389', function () {
console.log(this, 'continue on 2 page');
this.click('button#continue_1EE59AB98E7A1976E0530100007F737A_88z67389');

/*this.evaluate(function(){
console.log('continue on 2 page sdkjhdskl');
});*/   

});

为什么this.evaluate在waitForSelector中不起作用。任何帮助都将非常感激:)

0 个答案:

没有答案