Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.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
Javascript AngularJS-取消选中复选框_Javascript_Jquery_Angularjs_Checkbox - Fatal编程技术网

Javascript AngularJS-取消选中复选框

Javascript AngularJS-取消选中复选框,javascript,jquery,angularjs,checkbox,Javascript,Jquery,Angularjs,Checkbox,我正在尽可能多地使用angularjs——我正在编辑一些遗留系统,我不能承受太多的更改。因此,基本上,我需要实现一个函数,取消选中页面中的每个复选框。最简单的解决方案是使用angular.element,而不会对现有系统进行太多更改。现在我知道,这是一个非常糟糕的解决方案,但我需要让它发挥作用 目前,它可以工作(至少在视觉上),因为每个复选框都被取消选中,但是,在另一次单击时,复选框不起作用-需要按下两次,然后再次激活 下面是一个演示,演示了情况如何以及我是如何实现部分解决方案的: 用例如下所示

我正在尽可能多地使用angularjs——我正在编辑一些遗留系统,我不能承受太多的更改。因此,基本上,我需要实现一个函数,取消选中页面中的每个复选框。最简单的解决方案是使用
angular.element
,而不会对现有系统进行太多更改。现在我知道,这是一个非常糟糕的解决方案,但我需要让它发挥作用

目前,它可以工作(至少在视觉上),因为每个复选框都被取消选中,但是,在另一次单击时,复选框不起作用-需要按下两次,然后再次激活

下面是一个演示,演示了情况如何以及我是如何实现部分解决方案的: 用例如下所示

  • 单击复选框-计数器将增加到1,复选框将变为选中状态
  • 再次单击复选框-计数器将增加到2,复选框将变为未选中状态
  • 单击复选框-计数器将增加到3,复选框将变为选中状态
  • 按下“取消选中我”按钮-计数器不会增加,复选框将变为未选中(这是确定的)
  • 再次单击复选框-复选框变为“已选中”,但计数器不会增加
那么,我如何取消选中页面中的所有复选框,并仍然保持初始功能?我猜这里的问题是,复选框的范围没有变化,所以
ng change
不会被解雇


谢谢你的帮助

您的问题是您没有更改模型,因此无法调用ng change,因为数据没有更改。
您不能简单地将模型设置为false吗:

$scope.uncheck = function(){        
    $scope.confirmed = false;
};

是的,成功了。甚至不需要使用角度元素,完美!