对于HTML

<select id="date">
  <option value="20120904">Tue 4 Sep 2012</option>
  <option value="20120905">Wed 5 Sep 2012</option>
  <option value="20120906">Thu 6 Sep 2012</option>
</select>

我有以下水豚Ruby代码:

select "20120905", :from => "date"

但这是一个错误:

cannot select option, no option with text '20120905' in select box 'date' (Capybara::ElementNotFound)

然而,如果我这样做

select "Wed 5 Sep 2012", :from => "date"

没关系.

有可能在Value而不是Text之前 Select 水豚的选项吗?

谢谢

推荐答案

这将用于按值 Select 选项:

find("option[value='20120905']").click

要保持 Select 器的作用域,可以将其包装在一个内块中,如下所示:

within '#date' do
  find("option[value='20120905']").click
end

Ruby相关问答推荐

警告 Selenium [弃用] Manager#logs 已弃用.使用 Chrome::Driver#logs 代替

如何在 Ruby 中验证来自多项 Select 提示的命令行输入?

Ruby 匹配第一次出现的字符串以进行 gsub 替换

Ruby:通过正则表达式过滤数组?

将一个目录的内容复制到另一个目录

Ruby - net/http - 重定向

有效的Electron邮件地址正则表达式?

无法在 OSX Lion 上使用 RVM 安装 Ruby 企业版

Ruby 中的 Object 和 BasicObject 有什么区别?

无法在 Windows 上安装 Aptana Studio 3.6

Ruby 1.9 哈希,键中有破折号

Mustache Templates 可以做模板扩展吗?

Ruby:除非与如果不是

Ruby 中的超级关键字

我安装了一个 gem,但 require 'gemname' 不起作用.为什么?

如何在 Ruby 中获取堆栈跟踪对象?

如何在 jekyll markdown 博客中包含视频

Ruby总是Round Up

Ruby 中的 each 和 collect 方法有什么不同

JavaScript Array:获取项目的范围