渲染后新元素没有绑定事件
问题描述:
1、jquery append方法之后,原来click事件失效了;
2、json渲染出来的数据
问题解决:
1、重复绑定,比如 bind 之类;
2、直接在需要绑定的dom上面绑定onclick事件;
3、事件委托 .live()事件,但新的jquery1.7后不支持使用;
4、on方法
$("body").on("click",".class",function(){
to do some thing....
});
5、根据3的原理自己进行事件委托
$(function(){
$('tbody').click(function(event){
if (event.target.className == "delete") {
$(event.target).parents("tr").remove();
}
});
$('.add').click(function() {
$("<tr><td>103</td><td>68</td><td><button class='delete'>删除</button></td></tr>").appendTo('tbody');
});
});
这儿的event.target.className 是这个标签上所有的class。