代码改变世界

深入学习checkbox类型的input元素

2011-03-23 21:09  dreamhappy  阅读(764)  评论(0编辑  收藏  举报

 先看 一段选中所有页面check类型的代码

$("#SelectBtn").click(function(){
var state=$("#SelectAll").attr("checked");
if(state != true){
selectAll()
$(
"#SelectAll").attr("checked","true");
}
else{
cancelAll()
$(
"#SelectAll").attr("checked","false");
}
});

    逻辑上正确,问题在这一句

 $("#SelectAll").attr("checked","false");

     咋一看是想取消选中,其实不然。“checked是一个单属性”,无论它是true还是false,它总是checked而非unchecked。
所以上边的一句应该改成

$("#SelectAll").removeAttr("checked")


<input type="checkbox" checked=“false ”/>虽然false,但这一项仍被选中