Javascript 通过for循环将元素添加到数组中,然后返回最后一项
我有一个for循环,在这个循环中我检测有多少复选框被选中。我试图将结果推送到一个数组中,然后获取该数组中的最后一项。 这是到目前为止我的代码Javascript 通过for循环将元素添加到数组中,然后返回最后一项,javascript,arrays,for-loop,Javascript,Arrays,For Loop,我有一个for循环,在这个循环中我检测有多少复选框被选中。我试图将结果推送到一个数组中,然后获取该数组中的最后一项。 这是到目前为止我的代码 function updateParentLabel(parentList) { var label = parentList.parent().find('label:first'); var checked = parentList.find(':checked'); var count = 0; var result = []; for(var i
function updateParentLabel(parentList) {
var label = parentList.parent().find('label:first');
var checked = parentList.find(':checked');
var count = 0;
var result = [];
for(var i = 0; i < checked.length; i++){
if(checked){
count++;
}else {
count--;
}
result.push(count);
console.log(result);
}
label.append(count);
我找到了一种更简单的方法来检测复选框是否已被选中并相应地执行操作,这使得for循环变得不必要。本质上这就是我想到的
function updateParentLabel(parentList) {
var label = parentList.parent().find('label:first');
var checked_length = parentList.find(':checked').length;
if (checked_length !== 0) {
label.append(span);
}
else {
label.find('span').remove();
}
}
parentList
是jQuery对象吗?您是否将结果
记录到控制台?请注意,result
是updateParentLabel()
中的一个局部变量,不能在函数外部看到。另外,如果(选中)将始终传入您的代码。键盘上的字母用完了吗?请回答问题…嗨。谢谢感谢我迟来的答复。见下面我的答案。
function updateParentLabel(parentList) {
var label = parentList.parent().find('label:first');
var checked_length = parentList.find(':checked').length;
if (checked_length !== 0) {
label.append(span);
}
else {
label.find('span').remove();
}