【发布时间】:2015-08-19 21:21:30
【问题描述】:
我尽可能多地使用 angularjs - 我正在编辑一些遗留系统,我无法承受太大的改变。因此,基本上,我需要实现一个取消选中页面中每个复选框的功能。最简单的解决方案——在不改变太多现有系统的情况下——是使用angular.element。现在我知道,这是一个非常糟糕的解决方案,但我需要让它发挥作用。
目前,它可以工作(至少在视觉上),因为每个复选框都未选中,但是,在另一次单击时,该复选框不起作用 - 它需要按下两次,然后才能再次激活。
这是一个演示,展示了事情的现状以及我如何实现部分解决方案:http://jsbin.com/xicubegira/1/edit?html,js,output 用例如下。
- 单击复选框 - 计数器将递增到 1,复选框将变为选中状态
- 再次点击复选框 - 计数器将增加到 2,复选框将变为未选中
- 点击复选框 - 计数器将增加到 3,复选框将变为选中状态
- 按“取消选中我”按钮 - 计数器不会增加,复选框将变为未选中状态(没关系)
- 再次单击复选框 - 复选框变为“选中”,但计数器未递增!
那么,如何取消选中页面中的所有复选框并仍保持初始功能?我猜这里的问题是,复选框的范围没有任何变化,所以ng-change 不会被解雇。
感谢您的帮助!
【问题讨论】:
标签: javascript jquery angularjs checkbox