how to change class of a label for checkboxes in simple_form

和自甴很熟 提交于 2019-11-28 21:07:34

I wanted to give an update to this answer in case someone comes here looking for a way to do this as I did.

You can give the label a class with this option :item_wrapper_class => 'class_goes_here'

Here is a full example:

= 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'

If you want you can pass new_class to the label doing something like:

<%= f.collection_check_boxes attribute, collection, value_method, text_method do |b| 
      b.label(class: 'new_class') {b.check_box + b.text}
end %>

You should be able to set :input_html on your form input.

Somthing like:

f.input :something, :as => :check_box, :input_html => { :class => "myclass" }

ian.

The easiest way to change the label class for a checkbox is to insert the following in /config/inititializers/simple_form.rb or /config/initializers/simple_form_bootstrap.rb:

config.boolean_label_class = 'form-check-label'

To get the label class I had to get rid of the auto-generated label and write my own.

this is in rails 3 with simple form 2.1 so YMMV....

before:

<%= f.input :remember_me, :as => :boolean if devise_mapping.rememberable? %>

after:

<%= f.label :remember_me, :class => 'remember-me' %>
<%= f.input :remember_me, :label => false, :as => :boolean if devise_mapping.rememberable? %>
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!