$scope.isChecked = function(id){
var i=0,j=0,k=0;
//$scope.abc[i].usertype[j].keywords[0].key_bool=true;
if($scope.abc[i].type_selected == true){
while($scope.abc[i].usertype.length){
while($scope.abc[i].usertype[j].keywords.length){
if($scope.abc[i].usertype[j].keywords[k]._id == id){
if($scope.abc[i].usertype[j].keywords[k].key_bool == true){
$scope.abc[i].usertype[j].keywords[k].key_bool = false;
return false;
}
else{
$scope.abc[i].usertype[j].keywords[k].key_bool = true;
return true;
}
}
k++;
}
j++;
}
}
};
增加k ++是在工作,而不是增加j ++,有人可以解释一下,为什么会发生这种情况?
每当选中/取消选中复选框时,都会调用isChecked函数:
ng-click="isChecked(l._id)"
一切都适用于'j = 0',但不适用于以后的'j'值。
答案 0 :(得分:0)
只是因为返回语句每次到达return语句时执行都会退出函数。所以j ++;每次执行if语句时都无法访问
答案 1 :(得分:0)
答案 2 :(得分:0)
我得到了答案。 我们要把k = 0;在2个循环之间。 仍然感谢你们的帮助