0

我正在使用反应形式和角度材料的 md-select 。

这是我的表格

<md-select placeholder="Parent Category" class="full-width" formControlName="parent_id">
  <md-option>None</md-option>
  <md-option *ngFor="let category of plainCategories" [value]="category.id">
    <span *ngIf="category.subcategory.length==0">&nbsp;</span>{{ category.name }}
  </md-option>
</md-select>

我想从代码中设置 md-select 值,这就是我尝试过的

onClicked(e){
  if (e && e.action == 'edit') {

    let item = {
      id: e.item.id,
      name: e.item.name,
      slug: e.item.slug,
      parent_id: e.item.parent_id
    };

    this.categoryForm.setValue(item);
  }
} 

这是更新表单值({{categoryForm.val | json}}显示值集),但选择选项未显示已选择的选项。如何选择 md 选项?

在此处输入图像描述

4

1 回答 1

1

如果要更新的字段集不完整,如表单中声明的​​(例如,如果还有元素称为category,除id,和),name则将不起作用,请改用:slugparent_idsetValue()patchValue()

this.categoryForm.patchValue(item);

您还可以为每个字段设置值:

this.categoryForm.get('parent_id').setValue(e.item.parent_id);

看我的例子 plunker:https ://plnkr.co/edit/PftFkCQ5fvLICczt7gAO?p=preview

于 2017-09-24T10:46:03.137 回答