1 回答

TA贡献1784条经验 获得超8个赞
$('.delete-item').click(...)
仅将事件侦听器附加到现有项目。像这样使用事件委托:
$("ul").on("click", ".delete-item", function() { $(this).parent().text("DELETED") });
使用事件委托,您可以将事件侦听器附加到 DOM 中已存在的祖先(此处为元素<ul>
),并监视后代上的事件,无论它们是否已经存在或动态添加。
演示:
$("ul").on("click", ".delete-item", function() {
$(this).parent().text("DELETED")
});
$("button").click(function() {
$("ul").append(`<li>Appended item <a class="delete-item" href="#">Delete item</a></li>`)
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li>List item 1 <a class="delete-item" href="#">Delete item</a></li>
<li>List item 2 <a class="delete-item" href="#">Delete item</a></li>
</ul>
<button type="button">Add item</button>
添加回答
举报