2016-06-28 2 views
1

Как отправить массив с идентификаторами выбранных элементов из моего представления? У меня есть скрытые поля вводаРельсы, несколько значений во вводе

= f.hidden_field :selected_items 

Я могу это сделать, когда элемент только один с JQuery. При нажатии на нее я беру свой идентификатор и помещаю его в значение скрытого ввода. Тем не менее, я не знаю, как обрабатывать щелчок по элементам с идентификаторами 1,4,7 и 9, а затем отправить его на контроллер, например: selected_items = [1,4,7,9]. Спасибо!

ответ

2

Вы должны явно указать, что скрытое поле принимает несколько значений, вы можете сделать это несколькими способами,

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

f.hidden_field "selected_items[]" 

f.hidden_field :selected_items, :multiple => true 

Дозаписи каждого окно выбора выбранное значение, в скрытое поле с помощью JQuery,

$('#selected_items').val($('#selected_items').val() +','+ selected_item); 

Отправить значение запятой, разделенную и PARAMS пошлет массив из скрытых.

+0

Как положить значения в? Если я делаю $ ("# selected_items"). Val (selected_item); не потерял бы идентификаторы, которые уже находятся в: selected_fields? –

+0

Вы можете просто добавить значения в скрытое поле один за другим. Вроде. '$ ('# selected_items'). Val ($ ('# selected_items'). Val() + ',' + selected_item);' – Sravan

+0

Отправлять запятую – Sravan

Смежные вопросы