2015-05-21 2 views
-1

У меня есть список флажков и основной флажок, который, если выбран, проверяет все флажки. Я также могу проверить отдельные флажки.Кнопка «Отключить/Включить» на основе выбора флажка

HTML:

<button type="button" ng-disabled="!selectedAll">Click</button> 
<div> 
    <input type="checkbox" ng-model="selectedAll" class="checkbox" ng- click="toggle=!toggle"> 
</div>  

<div ng- repeat="item in items" > 
    <input type="checkbox" ng- checked="toggle" ng-model="selectedCheckBox[item.id]"> <i></i> 
</div> 

Контроллер:

$scope.toggle = false; 
$scope.selectedIntervention = {}; 

Я могу отключить/включить кнопку, выбрав основной флажок (за пределами нг-повтора), позволяя ng-disabled="!selectedAll" .Но I «Я не могу свернуть кнопку, если я выберу любой флажок, который находится внутри ng-repeat. Я попытался дать ng-model="!selectedCheckBox", но не работал таким образом. Любое возможное решение очень ценится. Спасибо

$scope.toggle = false; 
$scope.selectedCheckBox = {}; 
+0

selectedВсе == false? –

+0

Возможный дубликат [выбрать все флажки внутри ng-repeat] (http://stackoverflow.com/questions/29002278/select-all-checkboxes-inside-ng-repeat) –

+0

Да. Это работает отлично. Проблема с флажок внутри ng-repeat. Если любой выбранный должен сделать кнопку отключенной – forgottofly

ответ

2

ли следующие

Добавить

ng-click="checked(toggle)" 

В

<input type="checkbox" ng-click="checked(toggle)" ng-model="selectedCheckBox[item.id]"> 

И изменение кнопки, как этот

<button type="button" ng-disabled="!toggle">Click</button> 

И в контроллере

$scope.checked = function() { 
    $scope.toggle = !$scope.toggle; 
} 
Смежные вопросы