2017-10-09 2 views
1

HTMLAngular 4 Checkbox Trigger Änderungsereignis auf Modellwechsel

<input type="checkbox" id="1" [(ngModel)]="filter" (change)="onFilterChange($event)"> CheckBox 

<button (click)="filter = !filter">Change Status</button> 

TS

export class HelloWorld { 

    filter : false; 

    onFilterChange() { 
    console.log('filter change called'); 
    } 
} 

Wenn ich auf das Kontrollkästchen Änderungsereignis direkt klicken ausgelöst. Aber wenn ich auf die Schaltfläche "Status ändern" klicke, ändert sich der Status des Kontrollkästchens, aber das Änderungsereignis löst nicht aus. Kann mir jemand bitte sagen, wie man das macht?

Antwort

7

Wir haben diese Funktionalität mit Event-Handler zu erreichen und nicht mit 2-Wege-

Bindung
<input type="checkbox" id="1" 
     [ngModel]="filter" (ngModelChange)="onFilterChange($event)"> Checkbox 

<button (click)="onFilterChange($event)">Change Status</button> 

und in TS,

export class HelloWorld { 

    filter = false; 

    onFilterChange(eve: any) { 
    this.filter = !this.filter; 
    } 
} 
+0

ich damit versucht, noch nicht –

+0

@PratapA funktionierten. K Ihr onFilterChange erwartet einen Parameter, überprüfen Sie die aktualisierte Antwort – Sajeetharan

+0

immer noch es funktioniert nicht !! Können Sie mir bitte einen PLNKR geben, wenn es für Sie arbeitet? –

Verwandte Themen