Событие Jquery на ответ Ajax - PullRequest
4 голосов
/ 13 июня 2011

Как запустить функцию jquery для события .click() для элемента, созданного по запросу ajax?

Для обычного элемента это работает, но я хочу сделать это для элемента, созданного запросом ajax. И это не работает ...

$(".links").click(function(){alert("aaaa");})

a class="links" >1</a;

Я также пробовал со ссылками в качестве идентификатора. Мне это нужно для системы нумерации страниц.

Пожалуйста, помогите: (

Ответы [ 4 ]

4 голосов
/ 13 июня 2011

Вам нужно снова запустить код, чтобы связать обработчик события click, после того как новый элемент вставлен в DOM.В качестве альтернативы вы можете использовать .live () .

1 голос
/ 13 июня 2011

Вы должны использовать live () следующим образом:

$(".links").live('click', function(){alert("aaaa");})

Это также работает с элементами, добавленными в документ

, для щелчка по каждому элементу <a>, который вы должны сделать следующим образом (если это то, что вы имеете в виду:

$("a").live('click', function(){
      alert($(this).attr("id"));
    })

Это прикрепляет событие ко всем <a> элементам, а также к тем, которые были добавлены впоследствии.

EDIT - теперь в предупреждении отображается идентификатор ссылки:«this» в данном случае относится к <a>, который был нажат

1 голос
/ 13 июня 2011

используйте jquery live,

$(".links").live('click', function(){
    //user code here
});

для работы с динамически загружаемыми doms, вам следует использовать live функцию.jquery не загружает страницы автоматически после загрузки страницы.

1 голос
/ 13 июня 2011

Использование JQuery Live

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