Angular2 如何在下拉列表中绑定数据

Angular2 How to Bind Data in DropdownList

我在这里通过使用 Id 值获取数据请建议我如何在下拉列表中绑定此数据 服务

 GetStatesById(id: number): Observable<State> {
        let headers = new Headers({ 'Content-Type': 'application/json' });
        let options = new RequestOptions({ headers: headers });
        const sss = `${this.StateUrl}/${id}`
        return this._http.get(sss)
            .map(this.extractData)
            .do(data => console.log('getProduct: ' + JSON.stringify(data)))
            .catch(this.handleError);
    }

Component.ts

 export class CascadeDrpComponent {
 StateObj: State[] = [];
    GetStates(CountryId: number) {
            return this._HttpService.GetStatesById(CountryId)
                .subscribe(data => this.StateObj.values())
        }

Html代码

  <select>
        <option>Please Select State</option>
        <option *ngFor="let sts of StateObj"></option>
    </select>

你做得对way.But有一些细节你应该注意。 1.sts 是一个对象,因此您不会在下拉列表中看到详细信息。 2.if 你 select 一个项目,你 select 编辑的值是一个对象,而不是它的属性之一,所以你应该小心这一点。

通过赋值,您可以绑定下拉列表中的数据

<select>
    <option>Please Select State</option>
    <option *ngFor="let sts of StateObj" value="{{sts.id}}">{{sts.name}}</option>
</select>