JQuery UJS не работает, когда я удаленно загружаю частичные / контент с помощью удаленных вызовов или JQuery - PullRequest
3 голосов
/ 31 марта 2012

У меня есть фрагмент кода jQuery, который заполняет элемент на странице некоторым содержанием:

 var content = $("#note_"+note.id).html();
 $("another_div").html(content);

Это заменяет HTML другого div-штрафа, но проблема в том, что любые атрибуты удаленного доступа к данным больше не работают ни с каким содержимым внутри "another_div". Я думаю, проблема в том, что jquery_ujs отлично работает с элементами на странице при загрузке страницы, но если я удаленно загружаю контент, я теряю эту функциональность.

Как мне обойти это? Я заинтересован в этом также для его последствий удаленно загруженных партиалов

1 Ответ

2 голосов
/ 31 марта 2012

Я уже сталкивался с этим раньше, проблема в том, что jQuery уже проанализировал все элементы DOM при загрузке, поэтому не будет вызываться автоматически при изменении DOM.Вам нужно вручную вызвать проверочный анализ для вашего another_div.Вы можете сделать это, используя следующее:

$.validator.unobtrusive.parse("#another_div")

Edit: бит взлома, но нам, возможно, придется пнуть jQuery в задницу

var $ main= $ ("тег верхнего уровня");

// Unbind validation
$main.unbind();
$main.data("validator", null);

// Reparse document
$.validator.unobtrusive.parse(document);

//Re add to Main
$main.validate($main.data("unobtrusiveValidation").options);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...