我在ngRepeat
指令中让复选框正常工作时遇到了一些麻烦。
以下是代码:
<table>
<tbody>
<tr ng-repeat="item in arrayOfObjects track by $index">
<td>{= item.email =}</td>
<td>
<label>
<input type="checkbox" ng-model="item.permissions.superuser" ng-value="1">
</label>
</td>
<td>
<label>
<input type="checkbox" ng-model="item.permissions.manage_users" ng-value="1" ng-disabled="item.permissions.superuser">
</label>
</td>
<td>
<label>
<input type="checkbox" ng-model="item.permissions.manage_client_invoices" ng-value="1" ng-disabled="item.permissions.superuser">
</label>
</td>
</tr>
</tbody>
</table>
请注意,ng-model
设置为item
内的嵌套对象。我相信这是Angular在跟踪点击时遇到的问题。
预期的行为是独立检查上面的任何复选框。但是,实际行为是当我选中一个复选框(即映射到item.permissions.manage_users
的复选框)时,会检查映射到item.permissions.manage_users
的所有复选框。
如果有人能够对这些问题有所了解,我真的非常感激。