【发布时间】:2017-09-03 13:17:53
【问题描述】:
这是我想要实现的,我想将标签字符串作为我的 formControl 值,但我也需要选择更改的事件,这是我需要更改时的值,这是我的代码:
HTML:
<form [formGroup]="form">
<select class="form-control" [(ngModel)]="selectedListKota" #t (change)="ZonaChanged(t.value)" formControlName="nama_zona">
<option *ngFor="let lz of listKota" [value]="lz.value">
{{lz.label}}
</option>
</select>
</form>
这是我的 app.component.ts :
constructor(private frmInputMasterBassService: FrmInputMasterBassService, private formBuilder: FormBuilder) {
this.sStorage = sessionStorage.getItem('mAuth');
this.sStorage = JSON.parse(this.sStorage);
this.frmInputMasterBassService.getKotaList().subscribe(
data => {
this.data = data.json();
for (var i = 0; i < this.data.length; i++) {
this.listKota.push({label:this.data[i].KOTA, value:this.data[i].PROVINSI});
}
this.selectedListKota = this.listKota[0].value;
},
err => {
console.log(err);
}
}
);
this.form= this.formBuilder.group({
nama_bass: ['', Validators.nullValidator],
alamat_bass: ['', Validators.nullValidator],
nomor_telepon: ['', Validators.nullValidator],
nama_zona: ['', Validators.nullValidator],
contact_person: ['', Validators.nullValidator],
email: ['', Validators.nullValidator]
})
}
ZonaChanged(value){
console.log(value);
this.zona = value;
}
这是我的 listKota 数组 JSON 的样子:
[{
"label": "AGAM",
"value": "Sumatera Barat"
},
{
"label": "AIR MOLEK",
"value": "Riau"
}]
当我想选择 AGAM 时,我的表单 JSON 将如下所示:
{
"nama_bass": "",
"alamat_bass": "",
"nomor_telepon": "",
"nama_zona": "Sumatera Barat",
"contact_person": "",
"email": ""
}
我想要的“nama_zona”指向 AGAM,而不是“Sumatra Barat”,当事件(已更改)触发时,如何在不更改值的情况下更改它
【问题讨论】:
标签: javascript json angular angular2-forms