在写ajax加载数据的时候发现,后面添加进来的演示节点元素,失去了之前的点击事件。为什么点击事件失效,我们该怎么去解决呢& # 63;
其实最简单的方法就是直接在标签中写onclick=",但是这样写其实是有低的点,最好的方式还是通过给类名绑定一个点击事件。
解决jQuery ajax动态新增节点无法触发事件问题的两种解决方法,为了达到更好的演示效果,假设在某个页面的身体下有以下结构的代码:
& lt; ul id=把菔尽北? & lt;李类=" demo1 "祝辞a1 & lt;李类=" demo1 "祝辞a2 & lt;李类=" demo1 "祝辞a3 & lt;/ul> & lt;脚本type=" text/javascript祝辞 $(" #演示").click(函数(){ $(" #演示”).append (' & lt;李类=癲emo1祝辞aaa4”);//动态像ul的末尾追加一个新元素 }); & lt;/script>
生活()函数会给被选的元素绑定上一个或者多个事件处理程序,并且规定当这些事件发生时运行的函数。通过生活()函数适用于匹配选择器的当前及未来的元素,比如,通过脚本动态创建的元素。
实现如下:
$ (' .demo1 ') .live(“点击”,函数(){ alert('好的'); });
可以通过在方法绑定事件,可以绑定到它的父级或者身体中,实现如下:
$(" #演示”)。(“点击”,“.demol”,函数(){ alert('好的') });
通过上面的两种方法,都可以解决jQuery ajax动态新增节点无法触发点击事件的问题。知道方法了,赶紧的试试吧。
以上所述是小编给大家介绍的解决jQuery ajax动态新增节点无法触发点击事件的问题,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!