[英]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.