web-dev-qa-db-fra.com

Angular 2 événements de bouton radio

Quels sont ces événements appelés dans Angular 2 lorsque le bouton radio est sélectionné ou désélectionné.

Quelque chose comme 

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

Ainsi, lorsque je clique sur un bouton radio dans un groupe, il déclenche selected() pour la nouvelle sélection et unselected() pour la sélection précédente.

6
Tuomas Toivonen

Ça marche,

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

Mais vous avez besoin de plus de code pour déterminer si vous avez sélectionné ou non. 
Vous pouvez essayer ceci dans votre fichier * .ts:

  export class Comp {

    private _prevSelected: any;

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

  }
17
Edmond Wang

Le html est comme

 <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>

et le code est comme 

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