【问题标题】:Add class to collection_select on Ruby On Rails formulary将类添加到 Ruby On Rails 公式上的 collection_select
【发布时间】:2017-10-26 13:52:57
【问题描述】:

我正在使用表单在 RoR 中创建记录。我有下拉菜单,但不知道如何添加一个类来设置该元素的样式。

代码:

<%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, include_blank: false, class: "btn btn-secondary dropdown-toggle" %>

但是这个类不行,这个样式来自Bootstrap。

谢谢!

【问题讨论】:

    标签: css ruby-on-rails twitter-bootstrap collection-select


    【解决方案1】:

    你做得对,但你需要分开哈希:

    <%= f.collection_select :id, TipusProducte.order(:nom),:id ,:nom, { include_blank: false }, { class: "btn btn-secondary dropdown-toggle" } %>
    

    否则,它会被解释为一个哈希值。函数规范有两个对象哈希作为参数;第一个用于集合选项,第二个用于 HTML 选项。

    【讨论】:

    • 在回答问题时将其留在这里,但也要考虑@jvillian 的回答;您可能不想将您的选择下拉菜单设置为按钮。
    【解决方案2】:

    在 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 不知道如何处理它。

    【讨论】:

      猜你喜欢
      • 2015-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多