Rails 表单助手:单选按钮不采用 css 类名称



我有一个 Rails 表单助手,想将 css 类添加到单选按钮输入字段中。

            <span class="input-nile">
              <%= f.radio_button :nile_administration, class: 'input__field input__field-nile radio' %>
              <label class="radio-label">Nile Administration</label>
            </span>

输出为

           <span class="input-nile">
              <input type="radio" value="{:class=>&quot;input__field input__field-nile radio&quot;}" name="user[nile_administration]" id="user_nile_administration_classinput__field_input__field-nile_radio">
              <label class="radio-label">Nile Administration</label>
            </span>

我想实现无线电类型的输入标签获得 css 类"无线电",如下所示:

            <span class="input-nile">
              <input type="radio" value="" name="user[nile_administration]" class="input__field input__field-nile radio" id="user_nile_administration_classinput__field_input__field-nile_radio">
              <label class="radio-label">Nile Administration</label>
            </span>

我该怎么做?

问题出在冒号的位置

取代

<%= f.radio_button :nile_administration, class: 'input__field input__field-nile radio' %>

<%= f.radio_button :nile_administration , :class => 'input__field input__field-nile radio' %>

试试这个:

<%= f.radio_button :nile_administration, '', '', class: 'input__field input__field-nile radio' %>

如文档中所述,radio_button将其选项作为第 4 个参数:

radio_button(object_name, method, tag_value, options = {})

我认为这对你来说是工作:

<span class="input-nile">
  <%= f.radio_button :nile_administration,"",class: 'input__field input__field-nile radio', id: 'user_nile_administration_classinput__field_input__field-nile_radio'%>
  <label class="radio-label">Nile Administration</label>
</span>

您可以按如下方式设置f.radio_button的自定义 ID、类和其他属性。因为它只需要 3 个参数。这就是使用括号的原因。

 <%= f.radio_button :entity_type, 'practice', { checked: true, id: 'entity_type_practice', class: "custom-control-input entity-radio-button" } %>

最新更新