0

奇妙な問題があります。

私のhtmlページには、次のコードがあります。

<form>
<tr *ngFor="let role of userRoles" style="width:100%;" >
    <td style="width:37px;">
        <input class="uicheckbox" type="checkbox" [(ngModel)]="role.IsActive" name="isActive{{role.roleId}}" (click)="onCheck(role)" />
    </td>
    <td>{{role.Name}}</td>
</tr>
</form>

IsActive を true に設定したものと false に設定したものがあります。チェックボックスは、role.IsActive プロパティに基づいてチェックする必要があります。しかし、何らかの理由で、モデルのロード時にすべてのチェックボックスが (オフ) チェックされます。なぜこうなった?

編集:これをさらに見てみると、すべてのチェックボックスの状態は、配列の最後の要素に依存しています。したがって、最後のロールがチェックされている場合、すべてのチェックボックスがチェックされます。

EDIT 2:問題の原因となるフォームタグを追加しました。

4

1 に答える 1

1

[value]="role.isActive"個々の値を設定するには、チェックボックスの中に入れる必要があります。これは、Angular2 の公式ガイドにも記載されています。また、プロパティは小文字で始める必要があります。あなたはrole.IsActiveAngular2スタイルガイドに反しています

于 2016-11-30T17:50:58.620 に答える