链接javascript:window.location

时间:2013-02-27 18:17:49

标签: watir

任何想法如何点击具有以下条件的链接:

<a href="javascript:window.location='/app/exe/add.do?Id=8&val=1&callerURL=details';

我尝试了以下示例的几个变体,但似乎无法使其工作。

#$ie.a(:href => "http://app.com/app/exe/add.do?Id=8&val=1&callerURL=details").click
#$ie.link(:xpath,"//a[contains(@href='/app/exe/add.do?Id=8&val=1&callerURL=details')]/").click
#$ie.link(:href => "javascript:window.location='/app/exe/add.do?Id=8&val=1&callerURL=details'").click
#$ie.execute_script(:href => "javascript:window.location='/app/exe/add.do?Id=8&val=1&callerURL=details'").click
$ie.link(:xpath,"//a[contains(@href='/app/exe/add.do?Id=8&val=1&callerURL=details')]/").fire_event('onclick')

1 个答案:

答案 0 :(得分:0)

如果您尝试通过字符串匹配href,则必须完全匹配。您尝试的变体最后会遗漏一些字符。

尝试:

$ie.link(:href => "javascript:window.location='/app/exe/add.do?Id=8&val=1&callerURL=details';").click

注意之前';失踪了。

虽然必须有更好的东西来识别链接。也许是它的文本或其父元素。基于这个href,考虑到Id=8部分可能是动态的,可能很脆弱。