При выпадающем выборе перенаправить на (Rails 3)

#jquery #ruby-on-rails #ruby-on-rails-3 #carmen

#jquery #ruby-on-rails #ruby-on-rails-3 #кармен

Вопрос:

Я хотел бы, чтобы коллекция всех стран отображалась в виде выпадающего списка. Когда выбрана страна, я хотел бы перенаправить на root_path с выбранной страной в качестве параметра [т. Е. root_path(:country => selected_country)].

Я нашел драгоценный камень Carmen для списка стран, но, похоже, не могу заставить его функционировать должным образом, как указано выше!

Ответ №1:

Добавьте обработчик события изменения в поле выбора, в котором публикуется форма. В вашем действии контроллера, которое обрабатывает post, выполните перенаправление.

http://api.jquery.com/change/

http://api.jquery.com/submit/

Ответ №2:

Я, вероятно, не стал бы беспокоиться о сообщении формы; Я бы просто установил window.location и сконструировал URL-адрес с root_path помощником и добавленной вручную страной.

Однако я бы проверил параметр country, если он присутствует.

ИМО этот подход немного неэлегантен, и мне, как правило, больше нравится предложение Дерека, но это вариант.

Комментарии:

1. Да, я рассматривал это, но его вопрос включал ссылку на маршрут rails, и это решение привело бы к репликации этой информации о маршруте на клиенте. Не самое худшее. Я бы, вероятно, сделал это по-вашему, просто чтобы избежать написания метода контроллера.