我有一个复选框列表和一个主复选框,如果选中,则选中所有复选框。我也可以选中各个复选框。
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"
选中主复选框(ng-repeat外部)来禁用/启用按钮。但是如果我选中任何复选框,我就无法按下该按钮是在ng-repeat内部。我试过给ng-model="!selectedCheckBox"
,但没有这样做。任何可能的解决方案都非常感谢。谢谢
$scope.toggle = false;
$scope.selectedCheckBox = {};
答案 0 :(得分: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;
}