代码 <body> <form> 你爱好的运动是? <input type="checkbox" id="CheckedAll" />全选/全不选<br/> <input type="c
代码
<body>
<form>
你爱好的运动是?
<input type="checkbox" id="CheckedAll" />全选/全不选<br/>
<input type="checkbox" name="items" value="足球"/>足球
<input type="checkbox" name="items" value="足球"/>足球
<input type="checkbox" name="items" value="足球"/>足球
<input type="checkbox" name="items" value="足球"/>足球
<input type="button" id="send" value="提交"/>
</form>
</body>
$(function () {
$('#CheckedAll').click(function () {
if (this.checked) {
$('[name=items]:checkbox').attr('checked', true);
} else {
$('[name=items]:checkbox').attr('checked', false);
}
})
})
大致就是这样,,问题在于调试的时候只能勾选第一次,,第二次勾选的时候checked属性改变,,复选框却没勾选,,
百度后结果是: jquery更新后将attr将不能更改类似复选框的状态属性,,
解决办法: 将attr改为prop
$(function () {
$('#CheckedAll').click(function () {
if (this.checked) {
$('[name=items]:checkbox').prop('checked', true);
} else {
$('[name=items]:checkbox').prop('checked', false);
}
})
})