我试图做出选择新的价值后,我打电话eventChange()功能,恢复选择价值为默认值。 但是,会发生什么:ngModel值更新,但选择的值保持不变。 我应该怎样做,选择的价值和ngModel值是一样的吗?
HTML文件
<select [(ngModel)]="selectedValue"
(change)="eventChange()"
>
<option [disabled]="true"
[ngValue]="-1">
Choose an option
</option>
<option *ngFor="let item of myList index as i"
[ngValue]="i"
>
{{item.name}}
</option>
</select>
从组件文件功能
selectedValue = -1; //works //Option in select is changed
eventChange(){
this.selectedValue= -1; //don't work
//Function is called,
//Value changes
//But selected Option in Select doesn't change
}
评论:在运行网页(刷新)的选择第一个值设置正确,如果组件文件我设置变量了selectedValue其它索引选择其他值,但它只能在运行,而不是在功能)
此外,我发现这个问题Angularjs:当NG-模型更新选择不更新 ,但在这里是一个答案AngularJS使用NG选项,而不是NG重复,在角4只找到* ngFor ...
更新:澄清以防万一:函数被调用,但我想通过JavaScript改变所选的选项。 我尝试这种改变ngModel值,但即使ngModel值cahnged,选择选项不会更改。