【发布时间】:2019-12-28 00:43:39
【问题描述】:
我在 ID 中有 JSON 国家/地区,我想要将 defeulat 值设置为选中,这里是我的选择代码:
<select (change)="onNationalitySelected($event.target.value)" id="nationality" formControlName="nationality">
<option value=""> {{'messages.dropdownselect' | translate}} </option>
<option *ngFor="let country of countries" [value]="country.id" [selected]="country.id == '100'" >
{{ country.name }}
</option>
</select>
.ts 文件
onNationalitySelected(nationalityId: number) {
this.customer.coid = nationalityId;
this.customer.nationality = this.countries.filter(
c => (c.id == nationalityId)
)[0].name;
我尝试将国家/地区的默认值设置为 100,但它不起作用,保存到数据库后该值仍然为空。
感谢任何cmets。
【问题讨论】:
-
不确定我是否理解您的问题。如果问题是“如何预先选择一个选项”,那么这个问题已经被问了很多,答案总是一样的:唯一的真理就是模型。不是景色。所以删除 [selected]="...",并确保在您的 TypeScript 代码中,国籍表单控件的值是 === 选择显示的国家/地区之一的 ID。跨度>
-
嗨@JBNizet,感谢您的评论,在 ngModel 中进行了很多尝试,等等。但没有运气。我想要的是预先填充选项框的默认值而不先选择。如果你不介意,你能分享一个链接吗?我试图找到它一整天:(
-
您使用的是响应式表单,而不是模板驱动的表单。所以 ngModel 是无关紧要的。同样,在 TypeScript 代码中,表单控件的值必须设置为国家 ID 之一。发布您的 TypeScript 代码。这就是它必须发生的地方。
-
对不起@JBNizet,我不明白,顺便谢谢