web-dev-qa-db-ja.com

Railsタグを選択選択した値

私のタグ:

<%= select_tag(:option, options_for_select([['All', 1], ['Co', 2], ['Bought', 3], ['View', 4], ['Top API', 5], :selected => :option ])) %>

選択した値を、選択したオプションに設定するにはどうすればよいですか。たとえば、['Bought', 3]を選択して送信すると、['All', 1]オプションが選択されます。フォームの送信後に選択した値を表示するにはどうすればよいですか。

17
Yogzzz

すべてを正しく行いました。オプションを閉じてください] の前に :selected => :option

の代わりに ...], selected: :option ]))、 への変更 ...]], selected: :option ))

したがって、コードは次のようになります。

<%= select_tag(:option, options_for_select([['All', 1], ['Co', 2], ['Bought', 3], ['View', 4], ['Top API', 5]], selected: :option )) %>
26
gabrielhilal

これを試して:

<%= select_tag(:option, options_for_select([['All', 1], ['Co', 2], ['Bought', 3], ['View', 4], ['Top API', 5]], :selected => params[:option])) %>

これはRails 4.2で完全に機能します

10

タグにクラスを追加したい場合:

<%= select_tag(:option, options_for_select([["Option 1",1],["Option 2",2],["Option 3",3]], params[:option] ), class:"select") %>

Rails 5。

1
Gabriel Lucuy