我创建了一个在Firefox上完美运行的下拉列表。尽管有人在Chrome上尝试过,但我的工作已经完成。 由于某些原因,从未调用(click)函数
<select name="cars" id="car" title="cars" placeholder="select">
<option [value]="null" (click)="onCancelSelect(car);">Select</option>
<option *ngFor="let car of cars" (click)="onSelect(car);" [value]="car.id">
{{car.name}}
</option>
</select>
我确实尝试过移动select标签中的(单击)功能。这次调用了该函数,但是car是“ undefined”。 我能做什么 ?
答案 0 :(得分:1)
在“选择”上使用(change)
代替(click)
<select name="cars" id="car" (change)="onSelect($event.target.value);" title="cars" placeholder="select">
<option [value]="0">Select</option>
<option *ngFor="let car of cars" [value]="car.id">
{{car.name}}
</option>
</select>
onSelect(id) {
console.log(`car id: `, id);
console.log(`car`, id ? this.cars.find(c => c.id == id): "None")
}