通过某种方式,通过Angular的魔力,如果您使用ng- model并提供一个布尔值,则如果布尔值是true,则您的复选框将被选中,如果布尔值是true,则未选中。
ng- model
<input type="checkbox" ng-model="video.hidden">
尽管仅此一项就让人感到莫名其妙,但我实际上是在尝试反转选中状态,因为与todo示例不同,后者todo.done意味着选中了复选框,而我的模型更像todo.incomplete。
todo.done
todo.incomplete
不幸的是,我的第一个猜测没有用:
<input type="checkbox" ng-model="!video.hidden">
我所处的位置已经决定了模型,因此我无法更改它,也不必在客户端上对其进行按摩(因为我正在将客户端对象发送回服务器,因为它是在受信任的环境中运行)。
更新资料
这在1.3中有效,并且不会给您字符串(1.2.xxx为您提供字符串而不是布尔值):
<input type="checkbox" ng-model="video.hidden" ng-true-value="false" ng-false-value="true">
您现在就可以做到这一点,而无需自定义指令,角度支持ng-true-value和ng-false-value
ng-true-value
ng-false-value
https://docs.angularjs.org/api/ng/input/input [复选框]
您的示例现在应该可以工作 <input type="checkbox" ng-model="video.hidden" ng-true- value="false" ng-false-value="true">
<input type="checkbox" ng-model="video.hidden" ng-true- value="false" ng-false-value="true">