Watir如何获取具有不同类的行

时间:2013-12-16 12:28:28

标签: ruby watir watir-webdriver

我需要使用名为'odd_row'或'even_row'的类来获取所有行。

HTML:

<tbody>
    <tr class="first_row"> … </tr>
    <tr class="subjectField" style="display:none"> … </tr>
    <tr class="odd_row"> … </tr>
    <tr class="subjectField" style="display:none"> … </tr>
    <tr class="even_row"> … </tr>
    <tr class="subjectField" style="display:none"> … </tr>
</tbody>

我试过了:

@b.table(:class => 'color_table').tbody.trs(:class => ('odd_row' || 'even_row').size

但它返回1.

有人知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:3)

如果要执行“或”类,则需要使用正则表达式。在正则表达式中,“或”使用单个管道符“|”完成。您想要的类定位器是:

:class => /odd_row|even_row/

因此,要计算所有奇数行和偶数行,您需要:

@b.table(:class => 'color_table')
  .tbody
  .trs(:class => /odd_row|even_row/)
  .size

答案 1 :(得分:0)

你最后打电话给.size。这将数组的大小作为整数。没有它你可以尝试。