2013-06-15 1 views

답변

1

당신은 작동 ...이 작업을 수행 할 수 있습니다. 이

$scope.$watch('lists', function(lists){ 
    $scope.count = 0; 
    angular.forEach(lists, function(list){ 
     if(list.checked){ 
     $scope.count += 1; 
     if (inputsList.indexOf(list.id) == -1) { 
      inputsList.push(list.id); 
     }; 
     } else { 
      inputsList.pop(list.id); 
     } 
    }) 
    }, true); 

같은 논리하지만 가장 좋은 방법이라고 할 수는 없지만, 이

index.html을 (추가 NG 클릭)

<input type="checkbox" name="list_id[]" ng-model="list.checked" value="{{list.id}}" ng-click='updateItem(list)' /> 

app.js는 (제거

릴 수정 $ scope ... $ watch and ...)

$scope.currentSelectedItem = [];  
$scope.updateItem = function(item) { 
    if(item.checked) { 
     $scope.currentSelectedItem.push(item); 
    } else { 
     $scope.currentSelectedItem.pop(item); 
    } 
} 
+0

시도했지만 잘 작동하지 않았습니다. http://plnkr.co/edit/Y0YggxvVN1epIMWAdtiU?p=preview –

+0

위의 plunkr 링크가 위에 나와 있습니다 (선택 취소하면 목록 배열이 업데이트 됨) –

+0

더 좋은 해결책이 있습니까? –