Javascript 角度-加载页面上的选择值重新加载
我有一个组合框2,当选择另一个组合框1的值时,它会更新。为此,我使用了Javascript 角度-加载页面上的选择值重新加载,javascript,angular,Javascript,Angular,我有一个组合框2,当选择另一个组合框1的值时,它会更新。为此,我使用了onChange()函数。但当我保存对象并重新加载页面时,只显示组合框1的值。我认为这是因为组合框1的值被加载到onInit()函数中,而组合框2等待调用onChange()方法。 有没有办法也在组合框2上加载存储的值?这是我的代码(只有相关部分,如果需要其他代码,我会提供) 查看 <div> <select (change)="onChange($event.target.value)" [
onChange()
函数。但当我保存对象并重新加载页面时,只显示组合框1的值。我认为这是因为组合框1的值被加载到onInit()
函数中,而组合框2等待调用onChange()
方法。有没有办法也在组合框2上加载存储的值?这是我的代码(只有相关部分,如果需要其他代码,我会提供) 查看
<div>
<select (change)="onChange($event.target.value)" [ngModel]="model.mycombo1" name="mycombo1" id="mycombo1">
<option disabled hidden [value]="unusedValue">Scegli...</option>
<option *ngFor="let d of combo1" [value]="d.id">{{d.descrizione}}</option>
</select>
</div>
<div>
<select [ngModel]="model.mycombo2" name="mycombo2" id="mycombo2">
<option disabled hidden [value]="unusedValue">Scegli...</option>
<option *ngFor="let d of combo2" [value]="d.id">{{d.descrizione}}</option>
</select>
</div>
我通过在
onInit
函数中获取我的combo2
值解决了这个问题。否则,当页面加载时,视图不知道如何初始化组合框。希望此技巧能帮助他人。在Ngonit中,使用combo1中保存的值初始化combo2-this.comboSrv.getCombo2(model.mycombo1)
export class InsertComponent implements OnInit {
combo1: Combo[];
combo2: Combo[];
constructor(private comboSrv: ComboService) { }
ngOnInit() {
this.comboSrv.getCombo1().then(dst => {
this.combo1 = dst;
});
}
onChange(idCombo1: number) {
this.comboSrv.getCombo2(idCombo1).then(dst => {
this.combo2= dst;
});
}
}