У меня есть диалог, который загружается через AJAX. Paylaod этого ajax содержит как html, так и javascript.
Диалоговое окно отображается очень хорошо, и JS, включенный в эту полезную нагрузку, выполняется.
Однако я не могу выбрать какие-либо элементы (по идентификатору, классу или типу элемента) из JS в полезной нагрузке.
допустим, что полезная нагрузка имела:
<div>
<ul id="testid">
<li>A</li>
<li>B</li>
</ul>
</div>
<script type="text/javascript">
$(document).ready(function() {
console.info('test: ' + $("#testid").length);
});
</script>
Это приводит к тесту: 0 появляется в консоли.
Если я переключаю селектор на «тело», то это приводит к ненулевому значению.
Очевидно, что загруженный контент отображается, и JS, который в нем содержится, выполняется, и я понимаю, что вызов .ready () должен позволить обновлять время DOM, включая полезную нагрузку html.
К сожалению, в этом случае у меня нет прямого контроля над самой загрузкой ajax, так как я использую инфраструктуру, которая выполняет функции диалога для меня (zotonic).
Странно то, что у меня есть другие загруженные ajax-страницы, на которых есть JS, который выбирает элементы в загруженной ajax-загрузке - это просто диалог, который (до сих пор), похоже, не работает.
Я немного растерялся из-за того, почему только это идет не так. Я провел тщательную проверку и искал в Google и т. Д. Последние пару дней без решения, поэтому подумал, что буду звать на помощь здесь.
Jason