如何反向使用AngularJS的ng-disabled指令?
解决AngularJS勾选复选框启用按钮的问题
嗨,刚接触AngularJS很正常哈,术语不准完全没关系,有问题随时问就好~
你现在的代码里,ng-disabled="checked"的逻辑是:当复选框被勾选(checked为true)时,按钮就会被禁用。要实现勾选时启用按钮,只需要对checked取反就行啦,也就是把ng-disabled的值改成!checked。
另外还有个小细节:按钮上的ng-model="button"其实是多余的,因为按钮的启用/禁用状态完全由ng-disabled控制,去掉它代码会更简洁。
修改后的完整代码如下:
<label>Click me to toggle: <input type="checkbox" ng-model="checked"></label><br/> <button ng-disabled="!checked">Button</button>
简单拆解下逻辑:
- 当复选框未勾选时,
checked是false,!checked就是true,按钮保持禁用状态 - 当复选框勾选后,
checked变成true,!checked变成false,按钮就自动启用啦
内容的提问来源于stack exchange,提问作者modusTollens
相关产品推荐
相关产品推荐

