使用simple_form
我们可以使用以下方法更改标签的类别:
label_html => {:class => "myclass"}
但在处理复选框时我们如何做同样的事情?
simple_form
指定默认类collection_check_boxes
有没有办法更改此默认类?
答案 0 :(得分:65)
我想对这个答案进行更新,以防有人来这里寻找方法来做到这一点。
您可以使用此选项:item_wrapper_class => 'class_goes_here'
以下是一个完整的例子:
= user.input :resident,
:collection => [["In the U.S", true],["Outside the U.S.", false]],
:label_method => :first,
:value_method => :last,
:as => :radio_buttons,
:label => "Where is your principle residence?",
:item_wrapper_class => 'inline'
答案 1 :(得分:8)
如果您愿意,可以将new_class
传递给标签,例如:
<%= f.collection_check_boxes attribute, collection, value_method, text_method do |b|
b.label(class: 'new_class') {b.check_box + b.text}
end %>
答案 2 :(得分:3)
您应该能够在表单输入上设置:input_html。类似于:
f.input :something, :as => :check_box, :input_html => { :class => "myclass" }
伊恩。
答案 3 :(得分:1)
更改复选框的标签类的最简单方法是在 /config/inititializers/simple_form.rb 或 /config/initializers/simple_form_bootstrap.rb :
config.boolean_label_class = 'form-check-label'
答案 4 :(得分:0)
要获得标签类,我必须摆脱自动生成的标签并编写自己的标签。
这是在轨道3中的简单形式2.1所以YMMV ....
之前:
<%= f.input :remember_me, :as => :boolean if devise_mapping.rememberable? %>
后:
<%= f.label :remember_me, :class => 'remember-me' %>
<%= f.input :remember_me, :label => false, :as => :boolean if devise_mapping.rememberable? %>
答案 5 :(得分:0)