Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何选中angularJS中的所有复选框_Angularjs - Fatal编程技术网

如何选中angularJS中的所有复选框

如何选中angularJS中的所有复选框,angularjs,Angularjs,通过调用addAllMarkers(item)方法,我希望选中与项目相关的所有复选框 在my index.html中,我有: <li ng-repeat="item in items"> <a href="#" ng-if="item.children" ng-click="addAllMarkers(item)">{{ item.title }}</a> <input ng-if="!item.children" c

通过调用addAllMarkers(item)方法,我希望选中与项目相关的所有复选框

在my index.html中,我有:

<li ng-repeat="item in items">

        <a href="#" ng-if="item.children" ng-click="addAllMarkers(item)">{{ item.title }}</a>

        <input ng-if="!item.children" class="align"
                    type="checkbox"  ng-checked="item.checked" ng-click="checkItem(item)"
                   />

        <a href="#" ng-if="!item.children" ng-click="checkItem(item)">

                {{ item.title }} </a>
</li>
此方法仅用于选中或取消选中一个复选框; 在addAllMarkers中,我有以下代码,但它不起作用:(


您正在将对象
传递给函数
addAllMarkers
,但在该函数中,您将
视为一个数组。也许您希望将
传递给函数。@Michael P.他没有将其视为(var键入对象)的数组是Javascript中受支持的语法。@Fadwa el kebraoui,因为您希望所有内容都为true,所以if语句是无关的。此外,在以这种方式迭代对象中的属性时,您应该使用hasOwnProperty检查。@tuckerjt07我知道(obj中的var键)的语法
,但如果您查看模板,
有一个属性
title
,显示在
标记中。作为
项['title']。子项
项['title']。选中的
是胡说八道,我一直认为OP think在数组上迭代。
$scope.checkItem = function(item){

 if(item.checked== undefined || item.checked== true){

     itemProvider.remove(item);
      item.checked = false;   }
else{
     $scope.markers=itemProvider.addMarkers(item);
      item.checked = true; 
}  
 $scope.addAllMarkers = function (item){
 for(var i in item){
    if(!item[i].children){
    item[i].checked = true;
 }}
 .....

}