您的位置:首页 > Web前端 > JQuery

jQuery --- ajax新增节点无法触发事件解决方法

2017-10-18 15:52 549 查看
在静态页面中,绑定的元素能正常触发事件,但在ajax进行数据动态化后,发现新增的节点无法触发事件了,下面有两种方法可以解决:

一. 使用live方法(jQuery1.9+版本移出live方法需要注意)

$('.listBox').live('click', function(){
alert('OK');
});


live() 方法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。

通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。

2.使用on方法(jQuery 1.7+版本均支持,考虑兼容性可以选取这个)

$('.listBox').live('click', '.on', function(){
alert('OK');
});


on() 方法在被选元素及子元素上添加一个或多个事件处理程序。

自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery