7

チェックボックスの状態が変化したときにイベントを発生させるために考えられることはすべて試しましたが、うまくいかないようです。

ここにhtmlがあります

<div *ngIf="role?.ACTIVE_FLAG === 'Y'">
   <div class="label"> Active Record </div>
      <input type="checkbox" (click)="toggleRoleActive()" checked>
</div>
<div *ngIf="role?.ACTIVE_FLAG === 'N'">
   <div class="label"> Active Record </div>
      <input type="checkbox" (click)="toggleRoleActive()">
</div>

これが toggleRoleActive()
編集です:

toggleRoleActive(){
    if(this.role_submit.ACTIVE_FLAG === 'Y'){
        this.role_submit.ACTIVE_FLAG = 'N';
    }else {
        this.role_submit.ACTIVE_FLAG = 'Y';
    }
}

私が直面している課題の 1 つは、サーバーからデータを取得するときに、ボタンをオンまたはオフにする必要があることです。しかし、ロールを非アクティブ化または再アクティブ化したい場合は、チェックボックスに応答してもらいたいです。

[(ngModel)]、およびはるかに単純なソリューションを使用してみ(change)ましたが、イベントをトリガーしたのは だけですが、[(ngModel)]そのようにすると、true/falseではなく'Y'/になり'N'ます。また、私が使用する場合[(ngModel)]、サーバーが送信するデータに関係なく、チェックボックスは常にチェックマークが付けられます。

4

2 に答える 2

12

割り当てと変更イベント ハンドラーを個別に処理できます。

<input type="checkbox" 
  [ngModel]="role?.ACTIVE_FLAG === 'Y' ? true : false"        
  (ngModelChange)="toggleRoleActive()" checked>
于 2016-02-07T20:18:50.153 に答える