我正在尝试点击我从当前页面检索到的注销按钮。我成功获得了注销链接的id
。但是当我点击它时,会发生错误
无法在不存在的选择器
上调度mousedown事件
function getLogoutId()
{
var logoutid = "";
$(document).find("a").each(function(key,value){
var id = $(this).attr("id");
if(id.toLowerCase().indexOf("logout") > -1)
{
__utils__.echo("insidelogout" + id);
logoutid = id;
}
});
return logoutid;
}
var logoutid = this.evaluate(getLogoutId);
fs.write("logout.txt", this.getHTML(), 'w');
this.thenClick("#"+logoutid, function(){});
我已将html内容写入文件,我在其中检查了id
并且它就在那里。有问题的id
属性如下所示:
et-ef-content-ftf-flowHeader-logoutAction
答案 0 :(得分:0)
您是否尝试过只使用teamocil rubysession
?
还有你考虑使用jQuery点击按钮?像这样......(首先创建你的id的变量,这样你就可以传入jQuery)。
this.click("#"+logoutid);
答案 1 :(得分:0)
除了奇怪的jQuery使用外,我认为你的代码没有任何问题。
您可以尝试其他CSS选择器点击:
casper.thenClick("[id*='logout']"); // anywhere
或
casper.thenClick("[id$='logoutAction']"); // ending
或
casper.thenClick("[id|='logoutAction']"); // dash-separated
可能是显示代码后面的代码存在问题。您可以尝试将thenClick
更改为click
。