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.
Ç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)
}
}
}
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);
}