添加和删除 jquery li 元素
add and remove jquery li element
我想添加 li 元素,它工作正常,但删除对新元素不起作用。
我一开始有三个 li 元素,因为 remove 函数有效。
我用 "add" 函数创建了相同 class 的 Li 元素,为什么它对新元素不起作用?
$(document).ready(function(){
$("#add_li").click(function (){
$("ol").append("<li>" + $("input").val() + "<a href=\"#\" class=\"remove\">X</a></li>");
});
$("#remove_li").click(function(){
$("li:last").remove();
});
$(".remove").click(function(){
$(this).parents('li').remove();
});
var log = $('.remove');
console.log(log);
console.log(jQuery);
});
您需要使用 event delegation 将事件附加到动态添加的 dom。
Event delegation allows us to attach a single event listener, to a parent element, that will fire for all descendants matching a selector, whether those descendants exist now or are added in the future.
$("ol").on('click','.remove',function(){
$(this).parents('li').remove();
});
我想添加 li 元素,它工作正常,但删除对新元素不起作用。 我一开始有三个 li 元素,因为 remove 函数有效。
我用 "add" 函数创建了相同 class 的 Li 元素,为什么它对新元素不起作用?
$(document).ready(function(){
$("#add_li").click(function (){
$("ol").append("<li>" + $("input").val() + "<a href=\"#\" class=\"remove\">X</a></li>");
});
$("#remove_li").click(function(){
$("li:last").remove();
});
$(".remove").click(function(){
$(this).parents('li').remove();
});
var log = $('.remove');
console.log(log);
console.log(jQuery);
});
您需要使用 event delegation 将事件附加到动态添加的 dom。
Event delegation allows us to attach a single event listener, to a parent element, that will fire for all descendants matching a selector, whether those descendants exist now or are added in the future.
$("ol").on('click','.remove',function(){
$(this).parents('li').remove();
});