আপনার যদি দ্বি-মুখী ডেটা বাইন্ডিংয়ের প্রয়োজন না হয়:
<select (change)="onChange($event.target.value)">
<option *ngFor="let i of devices">{{i}}</option>
</select>
onChange(deviceValue) {
console.log(deviceValue);
}
দ্বি-উপাত্তের ডেটা বাইন্ডিংয়ের জন্য ইভেন্ট এবং সম্পত্তির বাইন্ডিংগুলি পৃথক করুন:
<select [ngModel]="selectedDevice" (ngModelChange)="onChange($event)" name="sel2">
<option [value]="i" *ngFor="let i of devices">{{i}}</option>
</select>
export class AppComponent {
devices = 'one two three'.split(' ');
selectedDevice = 'two';
onChange(newValue) {
console.log(newValue);
this.selectedDevice = newValue;
// ... do other stuff here ...
}
যদি devices
বস্তুর অ্যারে হয় তবে এর ngValue
পরিবর্তে বাঁধুন value
:
<select [ngModel]="selectedDeviceObj" (ngModelChange)="onChangeObj($event)" name="sel3">
<option [ngValue]="i" *ngFor="let i of deviceObjects">{{i.name}}</option>
</select>
{{selectedDeviceObj | json}}
export class AppComponent {
deviceObjects = [{name: 1}, {name: 2}, {name: 3}];
selectedDeviceObj = this.deviceObjects[1];
onChangeObj(newObj) {
console.log(newObj);
this.selectedDeviceObj = newObj;
// ... do other stuff here ...
}
}
Plunker- নতুন ফর্ম এপিআই ব্যবহার করে <form>
Plunker- ব্যবহার করে না<form>