Rails select_tag выбранное значение - программирование
Подтвердить что ты не робот

Rails select_tag выбранное значение

В приведенном ниже коде я хотел бы сохранить выбранное поле с переданным значением.

Но это не работает:

@yrs =[2011,2010,2009,2008]
<%= select_tag 'year', options_for_select([["Select" , "" ]] + @yrs.to_a,:selected=>2011) %>

Пожалуйста, посоветуйте мне, как это сделать.

Спасибо

4b9b3361

Ответ 1

Удалите часть :selected=>.

Синтаксис:

options_for_select(@options, @selected_options)

Применение:

options_for_select(1..5, 3)  # creates a range 1..5 , with 3 as selected by default

Ответ 2

<%= select_tag "page_type", options_for_select(@page_type.collect{ |u| [u.data_name, u.id]}, :selected=>@page.page_type), {:class =>"select_combobox",:onchange=>"reset_form(this.id,'page_type_msg');"} %>

это работает для меня:)

Ответ 3

Просто чтобы уточнить @M Tariq Aziz ответ:

Ваш код должен выглядеть так:

@yrs =[2011,2010,2009,2008]
<%= select_tag 'year', options_for_select([["Select" , "" ]] + @yrs.to_a,2011) %>

Общий формат для выбранного тега:

<%= select_tag 'year', options_for_select(:collection, :selected) %>