jQuery.1.9 live 代替事件 on 新增内容无法触发事件
Posted 弃身锋刃端!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery.1.9 live 代替事件 on 新增内容无法触发事件相关的知识,希望对你有一定的参考价值。
如果是新增 append 或者 html() 事件添加的内容,无法触发 click 事件,
在1.9 可以用live 事件来代替
1.9以后用
<div class="search-result-list"> <ul> <li data=‘11‘>我是内容</li> <li data=‘12‘>我是内容</li> </ul> </div>
如果<li>是新增的内容 , 就无法触发click事件,只能用下面的来实现
$("body").on(‘click‘,‘.search-result-list ul li‘,function (){ var id = $(this).attr(‘data‘); $.ajax({ type: "POST", url: "/Admin/Checkup/look_edit", data: {id:id}, success: function(msg){ if(msg.status==1){ $(".by-result").html(msg.data.ill) }else{ alert("数据失败!"); } } }); })
使用 live
$(‘.search-result-list ul li‘).live(‘click‘, function(){
alert(‘OK‘);
});
以上是关于jQuery.1.9 live 代替事件 on 新增内容无法触发事件的主要内容,如果未能解决你的问题,请参考以下文章
Jquery 的bind(), live(), delegate(), on()绑定事件方式
jquery on()绑定的点击事件在js动态新添加的元素上无效
浅谈Jquery中的bind()live()delegate()on()绑定事件方式