为了账号安全,请及时绑定邮箱和手机立即绑定

jquery.click添加新元素没有绑定怎么解决

jquery.click添加新元素没有绑定怎么解决

翻阅古今 2019-04-07 09:37:44
$(document).ready(function(){$('#graphdiv>table').click( function(){ console.log('hi'); } );})如上在页面载入时绑定,然后我再用ajax添加了table,但是新添加的table无法响应click除了jsonclick事件还有什么方法可以解决吗?谢谢
查看完整描述

2 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

table元素是新添加的,在首次加载时,并没有$('#graphdiv>table')。怎么绑定函数?
可以使用事件委托,将子元素的事件委托给父元素监听。直接给父元素绑定事件监听,事件发生时,检测其子元素是否符合条件。符合则触发子元素的事件。这样动态添加的子元素也有效。
类似:
ul.addEventListener("click",function(e){
if(e.currentTarget.tagName=="li"){
//做些什么
}
},false);
jquery用delegate()实现了事件委托。这样,既减少了时间监听的数量,也能为动态添加的元素绑定事件。
具体实现,楼上几位已经给了解答
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 401 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信