3 回答
TA贡献1784条经验 获得超9个赞
你可以做这样的事情:-
let selectedValuesArr = [];
function handleChange(event) {
const isChecked = event.target.checked;
if(isChecked) {
selectedValuesArr.push(event.target.value);
} else {
selectedValuesArr.splice(selectedValuesArr.indexOf(event.target.value), 1);
}
}
TA贡献1856条经验 获得超11个赞
您.map()只能在选中的复选框上使用.get()
function handleChange() {
var check = $(':checked').map((i, c) => ({sid: c.value})).get();
console.log(check);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" value="5da1dc651d011c56ef1cb3db_693715" onchange="handleChange()">
<input type="checkbox" value="6da1dc651d011c56ef1cb3db_837154" onchange="handleChange()">
TA贡献2011条经验 获得超2个赞
你也可以通过更多的优化来做到这一点
let selectedValuesArr = [];
function handleChange(elem) {
elem.checked ? selectedValuesArr.push(elem.value) : selectedValuesArr.splice(selectedValuesArr.indexOf(elem.value), 1);
}
添加回答
举报