任何想法如何点击具有以下条件的链接:
<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')
答案 0 :(得分:0)
如果您尝试通过字符串匹配href,则必须完全匹配。您尝试的变体最后会遗漏一些字符。
尝试:
$ie.link(:href => "javascript:window.location='/app/exe/add.do?Id=8&val=1&callerURL=details';").click
注意之前';
失踪了。
虽然必须有更好的东西来识别链接。也许是它的文本或其父元素。基于这个href,考虑到Id=8
部分可能是动态的,可能很脆弱。