Angular 2无法使用复选框使ngModel正常工作

时间:2017-05-08 21:04:22

标签: angular

我有一个编辑表单,其中数据来自数据库,其中包含一个由名称和选定属性组成的角色对象数组。我有一个数组中每个角色对象的复选框。加载表单时,即使查看所选属性为true的对象,也不会选中该复选框。如果我选中一个复选框,则下面标签中的role.selected值会发生变化,所以我不确定为什么在首次加载表单时不会选中该复选框。我尝试添加[value]="role.selected"[checked]="role.selected",但这并没有改变任何内容。任何帮助是极大的赞赏。我确信它看起来很简单,看了几个小时之后我就看不到了。

<div class="checkbox" *ngFor="let role of userToEdit.allRoles">
     <label><input type="checkbox" name="role" [(ngModel)]="role.selected" >{{role.name}}, {{role.selected}}</label>
</div>

1 个答案:

答案 0 :(得分:6)

您的所有输入都应该有一个不同的名称。

<div class="checkbox" *ngFor="let role of roles; let i = index">
  <label><input type="checkbox" name="role_{{ i }}" [(ngModel)]="role.selected" >{{role.name}}, {{role.selected}}</label>
</div>

AWS credentials doc