使用 Watir 按项目编号从下拉列表中选择 select 项?
Use Watir to select item from dropdown list by item number?
有没有办法使用 Watir select 按项目编号从下拉列表中选择项目?也就是说,当使用 SelectList
时,option()
除了 value
和 text
之外是否还需要其他任何东西?
我正在尝试 运行 网页上的一个过程,我 select 下拉列表中的第一项,执行操作,转到第二项,再次执行操作等。这个下拉列表有 700 多个选项!
这是 HTML 的样子:
<SELECT NAME="sl" SIZE="1">
<option value=""> </OPTION>
<option value="abq">Abaza</option>
<option value="abk">Abkhazian</option>
...
<option value="zun">Zuni</option>
</SELECT>
SelectList
文档建议如下:
b.select_list(:name => 'sl').select_value("abq")
问题是如何移动到下一个值?接下来的 700 个?有没有办法通过项目编号 select ?或者将值提取到数组中,然后循环遍历它们?
谢谢!
如果您想通过除文本或值之外的任何内容 select 选项元素,您可以直接定位并 select 元素。例如,相当于使用select_value
方法是:
b.select_list(:name => 'sl').option(value: 'abq').click
您可以使用常用的定位器。要select第二个选项,你可以使用:index
定位器(注意它是从0开始的):
b.select_list(:name => 'sl').option(index: 1).click
请注意,如果您想遍历每个选项,使用 Enumerable 方法之一进行循环可能更有意义。这可以消除对索引的担忧。但是,根据您计划采取的其他操作,可能无法正常工作。
b.select_list(:name => 'sl').options.each do |option|
option.click
# Do other actions
end
有没有办法使用 Watir select 按项目编号从下拉列表中选择项目?也就是说,当使用 SelectList
时,option()
除了 value
和 text
之外是否还需要其他任何东西?
我正在尝试 运行 网页上的一个过程,我 select 下拉列表中的第一项,执行操作,转到第二项,再次执行操作等。这个下拉列表有 700 多个选项!
这是 HTML 的样子:
<SELECT NAME="sl" SIZE="1">
<option value=""> </OPTION>
<option value="abq">Abaza</option>
<option value="abk">Abkhazian</option>
...
<option value="zun">Zuni</option>
</SELECT>
SelectList
文档建议如下:
b.select_list(:name => 'sl').select_value("abq")
问题是如何移动到下一个值?接下来的 700 个?有没有办法通过项目编号 select ?或者将值提取到数组中,然后循环遍历它们?
谢谢!
如果您想通过除文本或值之外的任何内容 select 选项元素,您可以直接定位并 select 元素。例如,相当于使用select_value
方法是:
b.select_list(:name => 'sl').option(value: 'abq').click
您可以使用常用的定位器。要select第二个选项,你可以使用:index
定位器(注意它是从0开始的):
b.select_list(:name => 'sl').option(index: 1).click
请注意,如果您想遍历每个选项,使用 Enumerable 方法之一进行循环可能更有意义。这可以消除对索引的担忧。但是,根据您计划采取的其他操作,可能无法正常工作。
b.select_list(:name => 'sl').options.each do |option|
option.click
# Do other actions
end