我有一个最初选中的复选框列表如下:
<input type="checkbox" name="capacity" value="16" checked> 16 <br>
<input type="checkbox" name="capacity" value="32" checked> 32 <br>
<input type="checkbox" name="capacity" value="64" checked> 64 <br>
<input type="checkbox" name="capacity" value="128" checked> 128 <br>
每次选中或取消选中复选框时,我都想再次更新capacity
列表,因此,我使用(稍微重复一下代码):
$('input[name="capacity"]').change(function() {
var capacity = $('input[name="capacity"]:checked').map(function() {
return this.value;
}).get();
console.log(capacity);
})
但是,容量仍包含上次未选中复选框的值。当我取消选中128 - &gt; capacity = ["16","32","64","128"]
。然后,我取消选中32 - &gt; capacity =["16","32","64"]
我不明白这种奇怪的行为,或者我做错了什么?