簡體   English   中英

如何使用Watir獲得帶有“ id ='foo'”的標簽元素的實例數?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM