Коллекция Rails 3 Выбрать на обмен Отправить - PullRequest
1 голос
/ 21 февраля 2012

Я пытаюсь отправить удаленную форму при изменении значения выбора коллекции.Я пытался:

"<%= form_tag ( { :controller => :images, :action => :index, :method => "post" }) do %>"

"<%= collection_select(:admin_image, :category_id, Admin::Category.all, :id, :name, {:onchange => remote_function(:url => {:controller => "/admin/admin_home", :action => "index"}, :with => "'category_id='+value")}) %>"

"<% end %>"

Но я понимаю, что remote_function больше не в рельсах 3. Поэтому я также попытался:

{:onchange => "submit();"

Но ничего не происходит.

Ответы [ 2 ]

2 голосов
/ 21 февраля 2012

Для этого вам нужно будет использовать Javacsript. Если вы используете jQuery, это просто. Вы захотите прослушать событие «change» и отправить форму при ее запуске. Я использую эту универсальную функцию, а затем отмечаю формы, которые я хочу автоматически отправлять при изменении, с помощью класса submit_on_change:

$("form.submit_on_change").each(function(idx,form){
  $(form).find("select,input").each(function(idx,element){
    $(element).change(function(){
      $(form).submit();
      return false;
    });
  });
});

Убедитесь, что вы запустили его после загрузки dom, например, на документе готов.

0 голосов
/ 06 марта 2012

После поиска в Интернете я нашел лучшее решение.Надеюсь, это поможет ....

"/ admin / images",: action => "index"}) do%> "submit ();"%>
...