jQuery使用on()绑定动态生成元素的事件无效
jquery on()方法是jquery1.7+后才使用的
由于需求:动态添加了以下代码
<tr class="pj" data-val="no">
<th id="first_tr" rowspan="1" colspan="1" data-id="xxx">自我评价<button type="button" title="添加" id="add_rw"/>
</th>
<td colspan="2">
<input type="text" name="task_name" datatype="title" Caption="自我评价" MAXLEN="100" ISNULL="notnull"/></td>
<td colspan="1"><input type="checkbox" name="result" value="2"/></td>
<td colspan="1"><input type="checkbox" name="result" value="1"/></td>
<td colspan="1"><input type="checkbox" name="result" value="0"/></td>
</tr>
绑定是这么写的
$("input[name='result']").on("click",function(){
var len = $(this).parent().siblings().children("input").attr("checked",false);
$(this).attr("checked",true); });
发现对于动态添加的没有起到监听作用,那么对代码进行修改,把监听对象改成静态的就可以了
$("table").on("click","input[name='result']",function(){
var len = $(this).parent().siblings().children("input").attr("checked",false);
$(this).attr("checked",true); });
这里table是非动态添加的父节点,由于.pj也是动态生成的,写.pj 作为父节点是没有效果的
jQuery使用on()绑定动态生成元素的事件无效的更多相关文章
- jQuery1.9之后使用on()绑定 动态生成元素的 事件无效
来自互联网: 需要绑定a的父级元素(此元素必须为静态元素,不是后来动态生成的),然后设定on()方法的selector参数才行: $('p').on('mouseenter', 'a', functi ...
- JQuery使用on绑定动态生成元素时碰到的问题
今天在写界面时,希望对一些由JS代码动态添加的html标签进行事件绑定,使用了jquery 1.6+才提供的on函数.我的JQ版本是1.9.2. 以下这段代码是动态生成的. <div class ...
- jquery生成元素注册事件无效,及事件委托的使用
在页面加载完成之后,我们在页面操作用js生成html代码到页面,动态的添加元素带页面上 但是,这里可能很多人就必须碰到的一个问题就出现了,当你之后动态添加了元素到页面上,发现这个元素的绑定事件无效,如 ...
- jQuery on()方法绑定动态元素的点击事件
之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态 ...
- jQuery on()方法绑定动态元素的点击事件无效
之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态 ...
- jQuery on()方法绑定动态元素的点击事件实例代码浅析
之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态 ...
- 动态生成元素动作绑定,jquery 1.9如何实现
1.7后增加了 live()1.9后被移除了 网上说可以用 on() 代替 可以实际在动态生成元素上绑定动作,没效果,求解绝方法(用低版本的jQuery这种方法,求别说..) 答: 之前有老兄回答过类 ...
- jQuery on()方法绑定动态元素的点击事件无响应的解决办法
$('#check_all').on('click' , function(){ alert(1); }); $("#yujinlist").append(html); count ...
- jquery一次绑定多个元素事件
jquery一次绑定多个元素事件 $(".peoplenum,input[name$='otherAmount'],#aa,#bb").bind("change" ...
随机推荐
- 在windows7 32ibt安装MongoDB数据库的方法及连接失败解决方案
参考 https://www.cnblogs.com/cnblogs-jcy/p/6734889.html http://yunkus.com/mongodb-install-config-in-wi ...
- Altium Designer入门学习笔记2:使用原创客3D元件库
请自行淘宝购买: 元件库列表(2018年11月27日): 问题一:在项目库或已安装的库中找不到? 将"原创客"提供的文件全部添加到libraries中!"原创客" ...
- Android内核编译步骤
android_4.0.4_tq210$ source build/envsetup.shandroid_4.0.4_tq210$ lunch 5/android_4.0.4_tq210$ make ...
- 利用Windbg深入理解变量的存储模型
下面的是一个简单的测试程序,基本包括了所有的变量类型,包括静态的,常量的,全局的,本地的,还有new出来的 #include <iostream> using namespace std; ...
- 程序员必需知道的windows快捷键
系统操作的快捷键 1.F5------刷新 2.window+E------打开我的电脑 3.window+r------打开运行 4.window+l------快速锁机 5.window+d--- ...
- Python学习-day10 进程
学习完线程,学习进程 进程和线程的语法有很多一样的地方,不过在操作系统中的差别确实很大. 模块是threading 和 multiprocessing 多进程multiprocessing multi ...
- Django--------问题:在terminal命令行创建超级用户时入到password时输入为什么没有反应?
首先如果遇到这样的问题不用担心,一般一会儿就可以解决: 其实,输入的时候并不是没有反应,只是你输入的时候命令行没有将你的输入显示出来,关键是输入行对Password:********也不是采用这种方式 ...
- MySQL 表数据的导入导出
数据导出 1. 使用 SELECT ...INTO OUTFILE ...命令来导出数据,具体语法如下. mysql> SELECT * FROM tablename INTO OUTFILE ...
- 【POJ 2585】Window Pains 拓扑排序
Description . . . and so on . . . Unfortunately, Boudreaux's computer is very unreliable and crashes ...
- 如何用jquery+json来写页面
以下是json数据表: [ { "p" : "银川市", "c" : [{"c1":"兴庆区"},{ ...