simple_form
を使用して、ラベルのクラスを変更できます。
label_html => {:class => "myclass"}
しかし、チェックボックスを処理するときにどのように同じことをしますか?
simple_form
は、collection_check_boxes
のデフォルトクラスを割り当てます
このデフォルトクラスを変更する方法はありますか?
私がしたようにこれを行う方法を探している誰かがここに来た場合に備えて、この回答を更新したいと思いました。
このオプションを使用して、ラベルにクラスを与えることができます: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'
必要な場合は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 %>
フォーム入力に:input_htmlを設定できるはずです。
次のようなもの:
f.input :something, :as => :check_box, :input_html => { :class => "myclass" }
イアン。
チェックボックスのラベルクラスを変更する最も簡単な方法は、以下を/ config/inititializers/simple_form.rbまたは/ config/initializers/simple_form_bootstrap.rbに挿入することです:
config.boolean_label_class = 'form-check-label'
ラベルクラスを取得するには、自動生成されたラベルを削除して、独自のラベルを記述する必要がありました。
これはRails 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? %>