5

我无法使用watir单击文本链接“添加” :

页:

<div id="divAdd" style="float: right">
    <a onclick="SwitchView('2')" style="color: #1B56A7; cursor: pointer;">Add</a>
</div>

瓦提尔代码:

browser.link(:text =>"Add").click

例外:

Unable to locate element, using {:tag_name=>["a"], :text=>"Add"}

请帮助我如何处理这个?

4

2 回答 2

17

如果页面有很多 ajax 和 javascript 运行,您可能只需要稍等片刻,让客户端代码在从浏览器加载页面后完成呈现页面。

尝试这个

browser.link(:text =>"Add").when_present.click

如果这不起作用,请确保该项目不在框架或其他东西中。

顺便说一句,如果页面上有多个链接带有“添加”文本,那么您可能必须在链接之外指定一个容器,以便您识别所需的链接。例如。

browser.div(id: => "divAdd").link.when_present.click

如果

于 2013-04-18T22:14:32.280 回答
1

这将是我的做法。

while browser.div(:class, 'containerDIV').a(:text, 'Add').exists? do
    browser.div(:class, 'containerDIV').a(:text, 'Add').click 
 end
于 2014-03-14T10:24:51.407 回答