我正在尝试在easyjet.com上使用casperjs,因为它与我将来要测试的非常类似(结果页面中非常类似的ajax部分)。
在单击链接时的飞行结果页面中,我无法触发任何操作ajax。
从调试开始,我看到链接被点击但没有触发ajax部分。
我无法理解我错在哪里。
提前致谢
这是代码:
casper.thenEvaluate (function () {
casper.waitForSelector ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice",
function success () {
casper.assertExists ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
this.click ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
},
function fail () {
casper.assertExists ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
});
});
casper.thenEvaluate (function () {
casper.waitForSelector ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice",
function success () {
casper.assertExists ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
this.click ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
},
function fail () {
casper.assertExists ("# Flight3987022. priceSmaller.targetPrice.formatedPrice.cellPrice");
});
});
答案 0 :(得分:0)
删除thenEvaluate()
外部函数,并直接调用casper.waitForSelector()
。
thenEvaluate()
用于在网页中运行JavaScript。 casper
对象在该范围内不可用。