[英]jQuery - .on('click' … ) does not work on already existing elements while working on dynamically created ones
JavaScript的:
$('body').on('click', '.deleteButton > a', function() {
alert('pop');
return false;
});
HTML:
<div class="deleteButton">
<a href="#">✖</a>
</div>
這種綁定的click事件在新創建的元素上(通過.clone和.prepend)運行良好,但不適用於現有元素。
但是使用.click()而不是.on()可以處理現有元素,而不能處理新創建的元素。
有什么方法可以將一行新的和現有元素上的click事件綁定在一起?
好吧,你可以看看小提琴JsFiddle
$('body').on('click', '.deleteButton > a', function () {});
您需要做的是將事件附加到正文,而不是類或id。 這樣做會將您的事件綁定到主體,作為回報,所有主體元素將自動綁定到該事件。
您的代碼運行正常。 但是您仍然可以嘗試這一方法。 它也起作用。
$('.deleteButton > a').on('click', function () {
alert('pop');
return false;
});
采用
$(document).ready(function(){
$('body').on('click', '.deleteButton > a', function() {
alert('pop');
return false;
});
});
希望這會幫助你。
檢查這個jsFiddle
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.