jQuery onclick не запущен для получения ссылки на странице

#jquery #html #jquery-mobile

#jquery #HTML #jquery-мобильный

Вопрос:

 <li class="ui-li ui-li-static ui-body-c">
    <p class="ui-li-aside ui-li-desc"></p>
    <span id="122"></span>
    <h3 class="ui-li-heading"></h3>
    <p class="ui-li-desc"></p>
    <p class="ui-li-desc"><a class="ui-link">Report</a></p>
</li>
  

Поэтому я динамически добавляю кучу этих элементов списка на свою страницу jQuery mobile при загрузке страницы. По мере загрузки страницы я также обновляю их каждые 5 секунд.

Я хочу выполнить функцию щелчка, если вы нажмете на Report ссылку, хотя (это может немного запутаться, когда вы это сделаете?), Поэтому у меня есть этот код для этого:

 $('a.ui-link').click(function(){
    alert('report');
});
  

Но я не получаю никаких предупреждений при нажатии на нее.

Как бы я это сделал?

Спасибо!

Ответ №1:

Используйте live() метод, чтобы прикрепить обработчик к динамически добавляемым элементам, которые соответствуют селектору:

 $("a.ui-link").live("click", function(){ alert("report"); });
  

Если a.ul-links являются дочерними элементами определенного элемента с id , вместо этого вы можете использовать delegate() метод для повышения производительности:

 $("#parent").delegate("a.ui-link". "click", function(){ alert("report"); });