【问题标题】:Watir - How to get option's attribute (aside from key and value)Watir - 如何获取选项的属性(除了键和值)
【发布时间】:2011-10-07 16:22:59
【问题描述】:

我正在尝试使用具有自定义属性的选项检查 select_list 元素。就像下面的例子一样,每个选项都有一个“标题”

<select id="mySelectList">
  <option title="title1" value="1">Title 1</option>
  <option title="title2" value="2">Title 2</option>
  <option title="title3" value="3">Title 3</option>
</select>

我需要访问选项的标题,但每个选项都不会真正响应 attribute_value 方法。是否可以检索 Watir 中选项的自定义属性值?

我正在使用 watir 和 IE

【问题讨论】:

    标签: watir


    【解决方案1】:

    对于您提供的 HTML,这对我有用,使用 watir-webdriver 和 Firefox:

    browser.option(:text => "Title 3").attribute_value "title"
    => "title3" 
    

    如果您需要所有这些:

    browser.options.each {|option| puts option.attribute_value "title" }
    

    输出

    title1
    title2
    title3
    

    【讨论】:

    • 我忘了提到我们正在使用 'watir' 和 IE。我是新手,我没有意识到“watir”和“watir-webdriver”之间的区别。这是否意味着我需要切换到 watir-webdriver 才能执行此操作?
    • 要做到以上,是的。要使用 watir gem,请参阅我的其他答案。
    • 如果您想要跨浏览器支持(例如,针对 IE 以外的任何浏览器的当前版本进行测试),那么只需转向 watir-webdriver 就值得研究。与 Watir 相比,IE 驱动程序方面有点弱(webdriver 开发人员偏见??),但恕我直言,跨浏览器支持弥补了这一点
    【解决方案2】:

    使用 watir gem (2.0.2) 和 Internet Explorer 9:

    browser.element(:css => "option").attribute_value "title"
    => "title1"
    

    browser.select_list(:id => "mySelectList").elements.each {|option| puts option.attribute_value "title" }
    

    输出

    title1
    title2
    title3
    

    【讨论】:

      猜你喜欢
      • 2020-10-02
      • 1970-01-01
      • 2014-10-31
      • 1970-01-01
      • 2016-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-02
      相关资源
      最近更新 更多