На данный вопрос уже ответили:
Есть код:
HTML
<input type="button" id="add" value="Add">
<ul class="list">
<li id="0">54546</li>
</ul>
<div class="result"></div>
и jQuery
$(document).ready(function(){
$('#add').click(function(){
var i;
for(i = 1; i < 5; i++){
$('.list').append('<li id="'+i+'">Test</li>');
}
});
$('li').click(function(event){
$('.result').text($(event.target).text());
});
});
На данный момент клик по li срабатывает только по элементу с id=0. Если добавить дополнительные элементы li, с помощью кнопки Add, то они работать не будут. Скажите пожалуйста, как сделать чтобы клик по другим элементам li срабатывал?
В тот момент, когда загружается страница на элементы li ставится обработчик клика, но на новые элементы, которые создаются по клику на кнопку обработчик не ставится. Чтобы обработчик срабатывал нужно его поставить.
function liclick(event) {
$('.result').text($(event.target).text());
}
$(document).ready(function(){
$('#add').click(function(){
var i;
for(i = 1; i < 5; i++){
var el=$('<li id="'+i+'">Test</li>');
$('.list').append(el);
el.click(liclick);
}
});
$('li').click(liclick);
});
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости