jQuery动态添加元素无法触发绑定事件

Posted 包仔饭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery动态添加元素无法触发绑定事件相关的知识,希望对你有一定的参考价值。

 

用jquery动态添加元素后,发现给动态添加的元素无法触发事件。解决方案如下:

方法一:绑定live事件(live事件只在jquery1.9以下才支持,高版本不支持)。

1
2
3
$(".newBtn").live("click",function(){ ///jquery 1.9(不包括1.9)以下可以
               alert(‘这里是动态元素添加的事件‘);
           })

 

方法二:利用on()事件绑定 ($(ParentEle).on("click",".thisEle",function(){})

1
2
3
$("body").on("click", ".newBtn", function() {
              alert(‘这里是动态元素添加的事件‘);
          });<br>//这里的ParentEle是 thisEle的父辈元素或者祖先元素,ParentEle可以是document,也可以是body等。<br><br><br>//注意:如果此时调用的函数是外部定义好的函数,那在调用的时候不要加(),不然会跳过点击事件直接触发函数
  $("body").on("click", ".newBtn",aa );
 function aa(){
alert(‘这里是动态元素添加的事件‘);
}

以上是关于jQuery动态添加元素无法触发绑定事件的主要内容,如果未能解决你的问题,请参考以下文章

jQuery对 动态添加 的元素 绑定事件(on()的用法)

jQuery动态绑定

解决jQuery ajax动态新增节点无法触发点击事件的问题

jQuery给动态添加的元素绑定事件的方法

JQuery 动态添加控件ID,无法触发点击事件

js 为动态添加的元素绑定事件