Ruby on rails下拉列表<select>菜单 - 如何设置样式或将类应用于选项?

Edm*_* Ng 6 css collections colors ruby-on-rails-3 drop-down-menu

如何在rails 3上的ruby中创建颜色下拉菜单?

我知道如何在html,css和javascript中执行此操作,但我不知道如何在ruby on rails 3.

理想的情况下使用collection_select或collection_options_for_select是构建其他集合对象<select>的和<options>的.使用这些将优选手动循环收集并吐出碎片并对每个碎片进行造型,尽管可以这样做.

代码部分我想要得到的是:

<select>
<option value="">Highlight</option>
<option value="#000000" style="background-color: Black;color: #FFFFFF;">Black</option>
<option value="#808080" style="background-color: Gray;">Gray</option>
<option value="#A9A9A9" style="background-color: DarkGray;">DarkGray</option>
Run Code Online (Sandbox Code Playgroud)

完整代码位于:http: //pietschsoft.com/post/2004/09/20/Color-the-background-of-items-in-a-Dropdown-box-in-your-HTML-pages.aspx

Adi*_*ghi 3

Rails Helperoptions_for_select绝对允许您为各个选项提供样式信息。

这直接来自文档options_for_select

  options_for_select([ "Denmark", ["USA", {:class=>'bold'}], "Sweden" ], ["USA", "Sweden"])
Run Code Online (Sandbox Code Playgroud)

给出

  <option value="Denmark">Denmark</option>\n<option value="USA" class="bold" selected="selected">USA</option>\n<option value="Sweden" selected="selected">Sweden</option>
Run Code Online (Sandbox Code Playgroud)

  options_for_select([["Dollar", "$", {:class=>"bold"}], ["Kroner", "DKK", {:onclick => "alert('HI');"}]])
Run Code Online (Sandbox Code Playgroud)

给出

  <option value="$" class="bold">Dollar</option>\n<option value="DKK" onclick="alert('HI');">Kroner</option>
Run Code Online (Sandbox Code Playgroud)

在你的情况下它将是

options_for_select([["Black", {:style => "background-color: Black; color: #ffffff"}],
                    ["Gray", {:style => "background-color: Gray"}],
                    ["DarkGray", {:style => "backgorund-color: DarkGray"}]])
Run Code Online (Sandbox Code Playgroud)