Меню динамического выбора Rails для 3.1

Как это будет обновлено для Rails 3.1?

http://railscasts.com/episodes/88-dynamic-select-menus

Я просто не могу понять, как вызвать файл js.erb и запустить код для динамической генерации javascript.


person 99miles    schedule 26.09.2011    source источник


Ответы (1)


Может быть что-то: в Rails 3.1 вы, скорее всего, используете jQuery вместо Prototype. Пример кода на сайте Railscasts использует старый добрый Prototype вместо новой новинки jQuery (библиотека javascript по умолчанию в Rails 3.1).

Как только все ваши jquery-каналы подключены, рельсы отвечают и отображают ваш js.erb так же, как всегда. В вашем контроллере:

def country_selected

    // whatever you need to do 

    respond_to do |format|
        format.js
    end
end

Затем в вашем каталоге просмотра у вас есть country_selected.js.erb, который вы можете поместить в любой javascript, который вы хотите обновить во втором меню выбора. (Помните, что вы должны избежать своего шиза, чтобы он работал правильно) например.

<%= escape_javascript(params[:country]) %>

Кстати, я думаю, что .rjs был перемещен из самого Rails в его собственный Gem. Еще кое-что, о чем следует помнить в отношении Rails 3.1 и javascript.

person backwardm    schedule 27.09.2011
comment
Да, я использую JQuery, и у меня это работает через Rails 3.0.10. Если я правильно вас понял, то, что вы описываете, не является динамически генерируемым js, как в railscast. - person 99miles; 27.09.2011