选择ngModel
时,对象是否可以指定为<input type="checkbox">
的值?
当我尝试将对象group
设置为ng-true-value
时,以下操作失败:
<div ng-repeat="group in groups">
<input type='checkbox' ng-model="array[$index]" ng-true-value="group">
</div>
或者,还有另一种方法可以达到这个目的吗?
答案 0 :(得分:1)
,ng-true-value
,但您必须明白ng-true-value
需要一个常量。换句话说,如果你这样做了:
<div ng-repeat="group in groups">
<input type="checkbox" ng-model="array[$index]" ng-true-value="{{group}}">
</div>
并选择第一项,然后以下内容为真:array[0] !== groups[0]
。换句话说,您将获得该对象的副本。
相反,您可以执行以下操作来分配实际对象:
<div ng-repeat="group in groups">
<input type="checkbox"
ng-model="selected"
ng-change="arr[$index] = (selected && group) || undefined">
</div>