[英]How can I get the number of instances of a tag element with “id='foo'” using Watir?
如何使用Watir獲取id='foo'
的標簽元素的實例數?
我有這個:
b = Watir::Browser.new
b.a(:id => 'foo')
然后如何獲取實例數並通過索引進行訪問,如下所示:
b.a(:id => 'foo', :index => $i) #Here, $i is a variable in a loop
在偽代碼中,我實質上是在嘗試這樣做:
num = "number of a tags with id foo"
while $i less than num do
put b.a(:id => 'foo', :index => $i).text into an array
end
我知道如何做,除了找到num
。
如果您想知道有多少個匹配項,則需要獲取一個元素集合(而不僅僅是一個元素)。 通過對元素方法(即as
進行復數來檢索集合。
b.as(:id => 'foo')
#=> <Watir::AnchorCollection>
從集合中,您可以使用length
(或count
)來查找實例數:
b.as(:id => 'foo').length
請注意,元素集合是可枚舉的。 這意味着您無需使用while
循環並手動跟蹤當前索引和總數元素。 例如,使用each
,您可以簡單地編寫:
b.as(:id => 'foo').each do |a|
puts a.text
end
下面的代碼應該為您工作:
arr = Array.new
b.as(:id => 'foo').each { |a| arr.push a}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.