Использование JQuery для манипулирования HTML-элементами, созданными из XSLT - PullRequest
0 голосов
/ 15 ноября 2009

Извините, если заголовок плохо объясняет.

У меня есть ситуация, когда я использую компонент DHTMLX AJAX для отображения XSLT в HTML. Итак, идея такова:

  1. Существует HTML-страница с DIV, в которую будет отображаться xslt.
  2. Конечно, файл xslt очень прост ... просто отобразите пару элементов XML в <p> теги.
  3. Динамически генерируемый XML.

Теперь все работает хорошо, он прекрасно отображает вывод в большинстве более поздних браузеров, и рендеринг и т. Д. Не проблема ...

Теперь я хочу использовать JQuery для выполнения чего-то простого, например, показать / скрыть тег

и т. Д., Который, конечно, имеет уникальный идентификатор.

То, как я это делаю, - это добавление JQuery-включения в страницу, содержащую HTML, и добавление Javascript / JQuery в раздел HEAD этой HTML-страницы, то есть, как обычно, если бы это была просто старая HTML-страница.

JQuery, похоже, не "видит" тег <p id='test'>, отображаемый из XSLT? хотя (насколько мне известно) XSLT действителен / сформирован хорошо и отображается нормально?

Что-то глупое, что мне явно не хватает ... или концептуально, или мудро кодировать ???

Заранее спасибо, любая помощь благодарна!

Ответы [ 2 ]

3 голосов
/ 15 ноября 2009

Код jQuery может быть запущен до завершения кода AJAX. Попробуйте функцию live:
http://docs.jquery.com/Events/live

live () привязывает события к текущим и будущим элементам, которые соответствуют селектору.

2 голосов
/ 15 ноября 2009

Если XML загружается через AJAX, вам нужно будет применить функцию jQuery к элементу после его загрузки или с помощью оперативного обработчика (в зависимости от события, которое вы обрабатываете). Если вы попытаетесь применить его при загрузке страницы без использования оперативного обработчика, тогда элемент еще не существует, и, следовательно, селектор не будет соответствовать ему, и никакие обработчики не будут применены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...