html:
<dl>
<dt><input type="checkbox" id="checkAll" /><label>全选</label><a href="javascript:;" id="no">反选</a></dt>
<dd>
<p><input type="checkbox" name="item" /><label>选项(一)</label></p>
<p><input type="checkbox" name="item" /><label>选项(二)</label></p>
<p><input type="checkbox" name="item" /><label>选项(三)</label></p>
<p><input type="checkbox" name="item" /><label>选项(四)</label></p>
<p><input type="checkbox" name="item" /><label>选项(五)</label></p>
<p><input type="checkbox" name="item" /><label>选项(六)</label></p>
<p><input type="checkbox" name="item" /><label>选项(七)</label></p>
<p><input type="checkbox" name="item" /><label>选项(八)</label></p>
<p><input type="checkbox" name="item" /><label>选项(九)</label></p>
<p><input type="checkbox" name="item" /><label>选项(十)</label></p>
</dd>
</dl>
<center>1、切换全选/全不选文字;2、根据选中个数更新全选框状态;</center>
css:
body,dl,dt,dd,p{margin:;padding:;}
body{font-family:Tahoma;font-size:12px;}
label,input,a{vertical-align:middle;}
label{padding:0 10px 0 5px;}
a{color:#09f;text-decoration:none;}
a:hover{color:red;}
dl{width:120px;margin:10px auto;padding:10px 5px;border:1px solid #666;border-radius:5px;background:#fafafa;}
dt{padding-bottom:10px;border-bottom:1px solid #666;}
dt label{font-weight:;}
p{margin-top:10px;}
jquery:
$(document).ready(function () {
console.log($('input[name="item"]'));
$('#checkAll').click(function () {
if ($(this).is(':checked')) {
$(":checkbox").each(function () {
$(this).prop('checked', true);
})
} else {
$(':checkbox').each(function () {
$(this).removeAttr('checked');
})
}
})
$('#no').click(function () {
$('input[name="item"]').each(function () {
if ($(this).is(':checked')) {
$(this).removeAttr('checked');
} else {
$(this).prop('checked', true);
}
})
})
$('input[name="item"]').click(function () {
var current = parseInt($(':checked').length);
var all = parseInt($('input[name="item"]').length);
console.log("current:" + current);
console.log("all:" + all);
if (current != all) {
$('#checkAll').removeAttr('checked');
} else {
$('#checkAll').prop('checked', true);
}
})
})