Watir自动化:如何从组合列表中选择项目

时间:2016-04-25 23:00:54

标签: ruby watir

我需要从组合列表中选择一个项目。你能帮忙吗?在开发工具项中声明为:

<div class="x-combo-list-inner" id="ext-gen146" style="width: 298px; height: 62px;">
    <div class="x-combo-list-item">Select..
    <div class="x-combo-list-item">Benefits Quick Case
    <div class="x-combo-list-item x-combo-selected">Time Off Quick Case</
</div>

代码:

topic_dropdown_box.click

sleep 7

def combo_list_Timeoff.click

def combo_list_Timeoff; @browser.iframe(:class, 'ext-shim').div(:css, 'x-combo-list-item x-combo-selected').div(:text, 'Time Off Quick Case');end

2 个答案:

答案 0 :(得分:1)

我不确定我知道你在找什么。 #select_list仅适用于select / option个html元素,因此您可能需要在点击所需选项之前打开下拉列表。

根据您在应用程序中的实现方式,您可能需要执行以下操作:

combo_list = @browser.div(id: "ext-gen146")
combo_list.click
combo_list.div(text: "Time Off Quick Case").when_present.click

似乎&#39; ext-gen146&#39;是动态生成的,在这种情况下,您可以执行以下操作:(id: /ext-gen\d\d\d/)

更新: class选择器只能将一个类作为参数。尝试:

@browser.iframe(class: 'ext-shim').div(css: '.x-combo-list-item.x-combo-selected').div(text: 'Time Off Quick Case')

实际上,只要文本存在,你就不应该需要中间div: @browser.iframe(class: 'ext-shim').div(text: 'Time Off Quick Case')

答案 1 :(得分:0)

试试这个:

[browser] .select_list(:id,“[id tag]”)。select_value(“[要选择的值]”)