2016-09-17 7 views
0

ERBを使用して選択ドロップダウンを作成する次のループがあります。正常に動作しています。ERBを使用して選択ドロップダウンループにクラスを追加する方法

<%= f.select(:player_id) do %> 
    <% @players.each do |p| %> 
     <%= content_tag(:option, "#{p.first_name} #{p.last_name}", value: p.id) %> 
    <% end %> 
    <% end %> 

私の質問はどのように選択要素にクラスを追加するのですか?

私は次のことを試してみました:

<%= f.select(:player_id), class: "form-control" do %> 
    <% @players.each do |p| %> 
     <%= content_tag(:option, "#{p.first_name} #{p.last_name}", value: p.id) %> 
    <% end %> 
<% end %> 

<%= f.select(:player_id), { class: "form-control" } do %> 
    <% @players.each do |p| %> 
     <%= content_tag(:option, "#{p.first_name} #{p.last_name}", value: p.id) %> 
    <% end %> 
<% end %> 

私は、上記の例のようなループを使用し、これに類似した質問が、どれを見てきました。

+1

'$(your_select_element).addClass(「あなたのクラス名」)' –

+0

ように私はそれについて考えたが、私はそれを行うことを好む、select要素にクラスを追加するためにJavaScriptを試してみてください可能であればインラインで – hii

答えて

1

これは私がやってしまったものです:

<%= f.select :player_id, options_for_select(@players.collect { |player| ["#{player.first_name} #{player.last_name}", player.id] }), {}, { class: 'form-control' } %> 
1

これはうまくいくはずです。

<%= f.select :player_id, options_for_select(@players.collect { |player| ["#{player.first_name} #{player.last_name}", player.id] }), class: 'form-control' %> 
+0

かなり機能しませんが、私が探していたものに私をつかまえました – hii

1

私はあなたのコードに問題がf.select(:player_id)だと思います。

1つのパラメータ:player_idでselectメソッドを呼び出しています。したがって、このような他のオプションを渡すことができます。

<%= f.select :player_id, class: "form-control" do %> <% @players.each do |p| %> <%= content_tag(:option, "#{p.first_name} #{p.last_name}", value: p.id) %> <% end %> <% end %>

関連する問題