如何在select中命名空白值?

时间:2012-04-05 21:10:02

标签: ruby-on-rails ruby-on-rails-3 forms simple-form

我在我的应用中使用simple_form。

如何在我选择的空白值中选择与“”不同的文字?

我只是找到一个包含空白的选项。

4 个答案:

答案 0 :(得分:51)

钟,

这取决于您如何构建select选项。如果你像下面的代码那样做,只需将一个字符串传递给:include blank。

select("post", "person_id", Person.all.collect {|p| [ p.name, p.id ] }, {:include_blank => 'Some text here'})

如果您使用options_for_select()设置选项,则可以执行以下操作:

options_for_select([["Dollar", "$"], ["Kroner", "DKK"]])

值=“”是数组中的第二个值,下拉列表中显示的名称是第一个。因此,在您的情况下,您可以将第二个答案更改为:

options_for_select([["Some text here", ""], ["Dollar", "$"], ["Kroner", "DKK"]])

答案 1 :(得分:32)

而不是

:include_blank => true

尝试

:include_blank => "your text here"

如果这是你正在寻找的。

答案 2 :(得分:22)

如果您使用select_tag(name, option_tags = nil, options = {})功能,则正确选项为:prompt => "Some text",而不是为select设置字符串值

答案 3 :(得分:1)

您可以手动执行此操作,方法是将["Your Text", ""]添加到传递给options_for_select的数组的开头,或将"<option value=\"\">#{h("Your Text"}</option>"添加到传递给select_tag的字符串的开头。< / p>