PrimeNG自动完成和绑定预先选择FormGroup中的对象

时间:2017-05-31 16:17:41

标签: primeng

所以当我想出答案时,我正在写这个问题,但我想我会在这里为别人发布这个问题。

如何将复杂对象绑定到PrimeNG自动完成字段,以便您可以预先选择该字段中的值,在返回表单时从绑定到自动完成的所选对象获取关联属性?在下面的示例中,siteObj表示绑定到自动完成的复杂对象,而siteName是在UI中显示的该对象中的字段。 Sites是复杂对象的集合。

自动填充

<p-autoComplete [suggestions]="sites" field="siteName" formControlName="siteObj"
                                                      (completeMethod)="getFilteredItems($event)" 
                                                      appendTo="body" [minLength]="3"></p-autoComplete>

1 个答案:

答案 0 :(得分:1)

所以这就是我想到的:

FormGroup 需要如下所示:

this.seriesObjectForm = this.formBuilder.group({
        seriesID: [''],
        siteObj: {
            siteID: [''],
            siteName: ['']
        },
        variableID: [''],
        etlTypeID: ['']
    })

预选如下所示:

this.seriesObjectForm.patchValue({
        seriesID: series.seriesID, siteObj: {siteID: series.siteID, siteName: series.siteName }, variableID: series.variableID, etlTypeID: ''
    });
表单中的

获取值如下所示:

var newItem = new Series(series.seriesID, series['siteObj']['siteID'], series['siteObj']['siteName'], series.variableID, series.etlTypeID)