用底下的方法尝试了好多次都失败 $('.del').on('click',function(){ alert('aa'); })// 失败!! 终于在准备放弃前看到一篇博文说的方法 $(document).on("click",'.del',function(){ alert('aa'); }); // 成功!!…
首先先解释一下什么是动态生成的元素:动态生成的元素即我们用jquery的内部插入函数append()所生成的html代码.相对的也有静态生成的元素:即直接编写在页面的html代码. 下面通过例子来讲解: html中有这样一个table: 1 <div class="table-responsive"> 2 <table class="table table-bordered"> 3 <thead> 4 <tr> 5 &…
我们在开发过程会遇到无法给动态元素添加绑定事件,解决方案如下: 例如 <div id="testdiv">   <ul></ul> </div> 需要给<ul>里面动态添加的<li>标签添加click事件 1.jquery 1.7版以前使用live动态绑定事件  $("#testdiv ul li").live("click",function(){ }); 2.jquery…
  jquery 为动态添加的元素绑定事件 如果直接写click函数的话,只能把事件绑定在已经存在的元素上,不能绑定在动态添加的元素上 可以用delegate来实现 .delegate( selector, eventType, handler ) 例如示例: $('someUlSelector').delegate('someLiSelector','click',function(){ //codes... //$(this) for the current jquery instance…
在AngularJS中,操作DOM一般在指令中完成,事件监听机制是在对于已经静态生成的dom绑定事件,而如果在指令中动态生成了DOM节点,动态生成的节点不会被JS事件监听. 举例来说: angular.module('myapp',[]) .directive('myText',function(){ return{ restrict:'A', template:'<div ng-click="hello()">Hi everyone</div>', link:…
jQuery的html()可以给现在元素附加新的元素,innerHTML也可以,那么,如何给这些新生成的元素绑定事件呢?直接在元素还未生成前就绑定肯定是无效的,因为所绑定的元素目前根本不存在. 然而,jQuery为我们提供了一个函数来解决这个问题,它就是.live()(备注:jquery的后期版本变为.on() ),它可以给所有元素绑定事件,不论是已有的,还是将来生成的,比如: $('#div').live('click',function(){ //do stuff }); 它还可以同时绑定多…
问题:很多时候发现,对动态生成的元素绑定click事件是无效的- 原因:直接绑定到动态生成的元素是无效的,是因为Jquery扫描文档找出所有的$(‘’)元素,并把函数绑定到每个元素的click事件上,表明是现有页面上存在的元素,动态生成的元素不包括在内. 解决方法:代理或者说是委托on( ),实现原理是事件的冒泡,在指定的祖先元素中注册事件,元素事件触发,传播到这个元素然后进行筛选. 可以在祖先元素中绑定事件,比如div是祖先元素,而新生成的元素都是div的子元素,所以动态生成的元素的事件就可以…
在使用jquery的方式为元素绑定事件时,我经常使用bind或者click,但这只能为页面已经加载好的元素绑定事件.像需要用ajax的方式请求远程数据来动态添加页面元素时,显然以上几种绑定事件的方式是无效的,具体写法如下图. $(selector).bind(event,data,function) $(selector).click(function) $("#searchMoveVideoResult ul li").bind("click",function(…
从jQuery 版本 1.7 起,on() 方法是向被选元素添加事件处理程序的(官方推荐)首选方法. 当浏览器下载完一个页面的时候就开始渲染(翻译)HTML标签,然后执行css.js代码,在执行js代码的时候就注册了相应绑定的事件,我们平常用jQuery给HTML标签绑定(单击)事件是一般这样写 $("#btnId").click(function () { //触发事件后 逻辑 });  但是对用js动态添加的元素 是无效的,即没有绑定单击事件,所以对于动态添加的标签需要用on()来…
动态生成的元素如果要添加事件,要写成 $(document).on("click", "#txtName", function() { alert(this.value); }); 作者:小路 QQ:2490024434 出处:http://www.cnblogs.com/lengzhan/本文版权归[冷战]和博客园所有,欢迎转载收藏,未经作者同意须保留此段声明,否则保留追究法律责任的权利.…