【问题标题】:Disable/Enable button based on checkbox selection基于复选框选择禁用/启用按钮
【发布时间】:2015-08-02 14:24:24
【问题描述】:

我有一个复选框列表和一个主复选框,如果选中,它会检查所有复选框。我还可以检查各个复选框。

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 = {};

【问题讨论】:

  • selectedAll == false?
  • 是的。这工作正常。问题出在 ng-repeat 中的复选框上。如果选择任何应该禁用按钮
  • @New Dev.Its the continuation of that question
  • @MANOJ,我只是注意到这实际上是你的问题 :) 两者有什么区别?

标签: javascript html angularjs checkbox


【解决方案1】:

关注

添加

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;
 }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-28
    • 2013-11-17
    • 1970-01-01
    • 2018-10-26
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    相关资源
    最近更新 更多