【发布时间】:2019-02-05 17:18:25
【问题描述】:
我的 component.html 中有一个下拉列表,当用户单击编辑按钮时,该下拉列表需要填充值。现在正在检索所有值,包括下拉列表的值,但下拉列表是用户必须单击才能查看值的唯一控件。我希望下拉菜单在用户不点击的情况下显示该值。
这是component.html的代码,
<mat-form-field>
<mat-select placeholder="Completed" formControlName="completed" #completed>
<mat-option value="true">Yes</mat-option>
<mat-option value="false">No</mat-option>
</mat-select>
</mat-form-field>
这是我的编辑组件类的代码,
ngOnInit() {
this.route.params.subscribe(params => {
this.id = parseInt(params.id);
this.blogService.getBooksById(this.id).subscribe(res => {
this.book = res;
this.completed = this.book[0].completed;
if (this.book[0].completed == true)
this.completed = "Yes"
else
this.completed = "No"
this.updateForm.get('title').setValue(this.book[0].title);
this.updateForm.get('comments').setValue(this.book[0].comments);
this.updateForm.get('completed').setValue(this.completed);
});
});
}
所以没有错误。我可以编辑和保存。但我不希望用户单击下拉列表来查看值是什么。下拉列表应显示从表单中检索到的相应书籍的 completed 值。 updateForm 的类型为 FormGroup。谢谢。
【问题讨论】:
-
您可能的值是字符串“Yes”和字符串“No”,因此在您的选项中,您的值必须是 value="Yes" 和 value="No"
-
谢谢@Eliseo。我改变了它,然后我继续添加一个函数,将“是”转换为真,将“否”转换为假,因为我在数据库中的字段有一个布尔数据类型