Я пробую использовать pjax для приложения, которое разрабатываю, но у меня ничего не получилось.
Может, я ошибаюсь, позвольте мне объяснить.
В приложении у меня есть главное меню вверху с различными разделами. Для каждой ссылки в этом меню включен pjax, что означает, что изменится только тело приложения.
Обычно, когда вы щелкаете ссылку без pjax, запускается метод document.ready. Я использую это для привязки событий к кнопкам, как в следующем примере.
вот мой файл users.js.coffee
loaded = false;
$ ->
$("#btn_new_user").bind "click", (event) ->
if not loaded
@path = $('#btn_new_user').attr("path")
$("#new-users-container").load(@path)
loaded = true
$("#new-users-container").slideToggle()
Как вы можете видеть в этом примере, когда страница «пользователи» завершает загрузку, она связывает кнопку с событием, которое загрузит форму в div и оживит это показать.
Однако, когда я запускаю в другом разделе администратора и нажимаю ссылку «Пользователи», чтобы отобразить эту кнопку, событие не привязывается. Когда я перезагружаю страницу в разделе «Пользователи», срабатывает document.ready, и кнопка работает нормально.
Есть ли лучший способ привязать события к кнопкам или есть способ запустить document.ready на pjax?
Спасибо.