jquery checkbox 全选反选代码只好执行一遍,第二次就失败
jquery checkbox 全选反选代码只能执行一遍,第二次就失败

上面的这个代码第一次点击和第二次点击,能实现全选和反选功能,但一遍之后就不再起作用,这是什么情况啊?
除了第一个checkbox之外,其余的都是ajax动态生成的,跟这个有关系么?console.log每次点击的都能交替输出1和2,但就是中间的代码不能执行。
------解决思路----------------------
------解决思路----------------------
有一种可能。。 代码是动态生成的 可能存在时间差。。 所以 JS试试用计时器延时正反选代码的运行 可以排除是不是动态代码的时间差导致的问题, (其实个人认为还是代码问题)
checkbox 正反选 只要操作checked属性就好了
checkbox1.attr('checked','checked')
checkbox1.remove('checked');
楼主可以试试
顺带顶下1楼
------解决思路----------------------
------解决思路----------------------
噢噢,看错了,动态生成的是下边的数据,这里可以不用live函数。
$(".chooseall").click(function(){
if($(".chooseall").attr("checked") == "checked"){
$("input[name='checkbox1']").removeAttr("checked","checked");
console.log(1);
}else{
$("input[name='checkbox1']").attr("checked","checked");
console.log(2);
}
});
上面的这个代码第一次点击和第二次点击,能实现全选和反选功能,但一遍之后就不再起作用,这是什么情况啊?
除了第一个checkbox之外,其余的都是ajax动态生成的,跟这个有关系么?console.log每次点击的都能交替输出1和2,但就是中间的代码不能执行。
------解决思路----------------------
$(".chooseall").click(function(event){
$("input[name='checkbox1']").prop("checked",this.checked);
});
------解决思路----------------------
有一种可能。。 代码是动态生成的 可能存在时间差。。 所以 JS试试用计时器延时正反选代码的运行 可以排除是不是动态代码的时间差导致的问题, (其实个人认为还是代码问题)
checkbox 正反选 只要操作checked属性就好了
checkbox1.attr('checked','checked')
checkbox1.remove('checked');
楼主可以试试
顺带顶下1楼
------解决思路----------------------
//动态加载的元素要用live或者bund等函数来处。
$(".chooseall").live('click',function(){
$(':checkbox[name=checkbox1]').prop('checked',this.checked);
});
------解决思路----------------------
噢噢,看错了,动态生成的是下边的数据,这里可以不用live函数。