发现了一种新的Select_list,并且不知道如何为其编写代码

时间:2016-05-18 07:20:55

标签: ruby watir watir-classic

我已经用这样的方式为选择列表编写了代码b.select_list(:id,'something')。选择'某事',但我不知道如何为下面的选择列表编写代码,任何人都可以帮助我编写代码以从select_list中选择

<md-select tabindex="0" class="ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required" role="listbox" aria-disabled="false" aria-expanded="false" aria-invalid="true" aria-multiselectable="false" aria-required="true" aria-owns="select_container_5" aria-label="Gender" ng-model="user.gender" name="gender" required=""><md-select-value class="_md-select-value _md-select-placeholder" id="select_value_label_0"><span>Gender</span><span class="_md-select-icon" aria-hidden="true"></span></md-select-value><div class="_md-select-menu-container" id="select_container_5" aria-hidden="true"><md-select-menu class="ng-scope"><md-content>
                            <md-option tabindex="0" class="md-ink-ripple" id="select_option_3" role="option" aria-selected="false" value="Male"><div class="_md-text">Male</div></md-option>
                            <md-option tabindex="0" class="md-ink-ripple" id="select_option_4" role="option" aria-selected="false" value="Female"><div class="_md-text">Female</div></md-option>
                            </md-content></md-select-menu></div></md-select>

1 个答案:

答案 0 :(得分:3)

根据元素标记select,它看起来像select list is created by Angular Material。它不是select_list元素,这意味着您无法使用通常的# Open the dropdown browser.element(tag_name: 'md-select', name: 'gender').click # Select an option (by value) browser.element(tag_name: 'md-option', value: 'Female').when_present.click 方法。相反,您需要手动与之交互。这包括:

  1. 单击选择列表以打开选项列表
  2. 点击其中一个选项
  3. 以下代码将按值选择一个选项。您可以根据需要使用不同的定位器:

    md-select

    几点说明:

    • 由于element不是标准元素,您需要使用通用when_present方法找到它。
    • 确保使用.m(或其他等待方法)以确保在选择之前显示选项。