2016-05-31 8 views
3

Welche Ereignisse werden in Angular 2 aufgerufen, wenn das Optionsfeld ausgewählt oder nicht ausgewählt ist.Angular 2-Optionsfeldereignisse

So etwas wie

<input type="radio" (select)="selected()" (unselect)="unselected()" /> 

Also, wenn ich ein Optionsfeld in einer Gruppe klicken, wird es selected() für die neue Auswahl und unselected() für die vorherige Auswahl feuern.

Antwort

8

Es funktioniert,

<input type="radio" (change)="handleChange($event)" /> 

Aber Sie müssen Code mehr oder 'nicht ausgewählt' beurteilen, 'ausgewählt'.
Sie können versuchen, dies in Ihrer * .ts-Datei:

export class Comp { 

    private _prevSelected: any; 

    handleChange(evt) { 
     var target = evt.target; 
     if (target.checked) { 
     doSelected(target); 
     this._prevSelected = target; 
     } else { 
     doUnSelected(this._prevSelected) 
     } 
    } 

    } 
+0

Wissen Sie, wie man von Fall zu überprüfen, die Zustand des Knopfes? –

+0

@Tuomas, haben die Antwort bearbeitet. –

0

Die html ist wie

<div *ngFor = " let displayParameter of displayParameters" >  
    <!-- <li><a href="#">{{displayParameter}}</a></li>  --> 
    <!-- <input type="radio" name="displayParameter" (change) ="handleChange(event)")> --> 
    <h5><input type="radio" name="radiogroup" (change)="handleChange(displayParameter)" [checked]="(idx === 0)" >{{displayParameter}} </h5> 
</div> 

und Code ist wie

handleChange(evt){ 
      this.displayParameter = evt; 
     console.log(evt); 
     }