将 class 添加到 Ruby 上的 collection_select 上 Rails 公式
Add class to collection_select on Ruby On Rails formulary
我正在使用表格在 RoR 中创建记录。我有下拉菜单,但我不知道如何添加 class 来设置此元素的样式。
代码:
<%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, include_blank: false, class: "btn btn-secondary dropdown-toggle" %>
但是这个class不行,这个风格来自Bootstrap.
谢谢!
在 Bootstrap 下拉列表 docs 中,样式始终应用于 button
元素,如下所示:
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown button
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
但是collection_select
会给你select
,像这样:
<select name="post[author_id]">
<option value="">Please select</option>
<option value="1" selected="selected">D. Heinemeier Hansson</option>
<option value="2">D. Thomas</option>
<option value="3">M. Clark</option>
</select>
我猜 HTML 看起来像:
<select ... class = "btn btn-secondary dropdown-toggle">
而且我想 Bootstrap 不知道该怎么做。
你做得对,但你需要分开散列:
<%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, { include_blank: false }, { class: "btn btn-secondary dropdown-toggle" } %>
否则,它会被解释为一个散列。函数规范有两个 object 散列作为参数;第一个用于 collection 个选项,第二个用于 HTML 个选项。
我正在使用表格在 RoR 中创建记录。我有下拉菜单,但我不知道如何添加 class 来设置此元素的样式。
代码:
<%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, include_blank: false, class: "btn btn-secondary dropdown-toggle" %>
但是这个class不行,这个风格来自Bootstrap.
谢谢!
在 Bootstrap 下拉列表 docs 中,样式始终应用于 button
元素,如下所示:
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown button
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</div>
但是collection_select
会给你select
,像这样:
<select name="post[author_id]">
<option value="">Please select</option>
<option value="1" selected="selected">D. Heinemeier Hansson</option>
<option value="2">D. Thomas</option>
<option value="3">M. Clark</option>
</select>
我猜 HTML 看起来像:
<select ... class = "btn btn-secondary dropdown-toggle">
而且我想 Bootstrap 不知道该怎么做。
你做得对,但你需要分开散列:
<%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, { include_blank: false }, { class: "btn btn-secondary dropdown-toggle" } %>
否则,它会被解释为一个散列。函数规范有两个 object 散列作为参数;第一个用于 collection 个选项,第二个用于 HTML 个选项。