今天要做个全选列表的东西,用的是jQuery,先是用attr来读取和设置checkbox的选中状态,结果第一次点击,可以全选,第二次可以取消所有选择,第三次无效,一直无效到N次,后在box[]上用onclick事件查他的checked值,每次都是checked{IE下测试的},郁闷了好一会儿,。。。上网上一搜全是一样的处理方式,差不多的代码,不知道他们那是怎么成功的了。
最后使用:prop()操作,直接成功无错。
以下是HTML代码部分:
<input id="checkAll" type="checkbox" value="">点击这里全选
<input name="box[]" type="checkbox" value="1">
<input name="box[]" type="checkbox" value="2">
<input name="box[]" type="checkbox" value="3">
<input name="box[]" type="checkbox" value="4">
<input name="box[]" type="checkbox" value="5">
以下为JAVASCRIPT部份:
<script type="text/javascript">
jQuery("#checkAll").click(function(){
if(jQuery(this).prop('checked')) {
jQuery("input[name='box[]']").prop("checked",true);
}else {
jQuery("input[name='box[]']:checked").prop('checked',false);
}
});
</script>