最近在用DataTables做Row Details测试时,发现一个奇怪的现象,奇数次加载页面时能正常展开,偶数次不能展开,经过调试,发现每次加载都在原事件基础上绑定了新的事件,故每逢奇数次的话才能展开,未解决这个问题,需要取消原绑定事件后再进行绑定;
方法一:针对通过live方式添加的事件,需要在live之前调用die(),如
(“#objects”).live(“click”,function(){ //事件代码 });
需改为:
(“#objects”).die().live(“click”,function(){ //事件代码 });
方法二:针对通过bind()方法添加的事件,需要通过unbind()取消绑定,如:
$("#objects").click(function() { alert("未解除绑定执行"); }); $("#test2").unbind('click').click(function() { alert("解除绑定执行"); });