3

给定以下 HTML 代码片段;通过 ID 找到链接后,您将如何选择同一段落中的复选框?例如,如果我想选中与 ID="inst_17901-1746-1747" 的链接关联的复选框。

DIV中的段落顺序不一致,因此我无法通过复选框的索引或 ID 选择它。

<div id="inst-results">
<p>
<input id="inst-results0-check" type="checkbox">
<a class="ws-rendered" id="inst_17901-1746-1747" title="!!QA Data 2/DOOR FURNITURE/316 Stainless - Altro Range"><img src="http://yr-qa-svr2/Agility/ACMSImages?type=objectType&amp;objectTypeID=32"> <span>!!QA Data 2/DOOR FURNITURE/316 Stainless - Altro Range</span></a>
</p>
<p>
<input id="inst-results1-check" type="checkbox"><a class="ws-rendered" id="inst_17882-1746-1747" title="!!QA Data/DOOR FURNITURE/316 Stainless - Altro Range"><img src="http://yr-qa-svr2/Agility/ACMSImages?type=objectType&amp;objectTypeID=32"> <span>!!QA Data/DOOR FURNITURE/316 Stainless - Altro Range</span></a>
</p>
</div>

我从链接的文本中找出了这个解决方案,但是 Zeljko 解决方案要好得多。

    $browser.div(:id,"inst-results").ps.each { |para|
        if para.link.text == "!!QA Data/DOOR FURNITURE/316 Stainless - Altro Range" then
            para.checkbox.set
            break
        end
    }  
4

1 回答 1

3

如果带有链接的段落中只有一个复选框:

browser.link(:id => "inst_17901-1746-1747").parent.checkbox.set

适用于 watir-webdriver,不确定它是否适用于其他 Watir gem。

于 2011-06-22T12:21:17.250 回答