2016-08-16 47 views
2

是否有可能雙向數據綁定到像下面的'選擇'下拉菜單?嘗試雙向數據綁定選擇元素時遇到問題

<select [(ngModel)]="selectedSport"> 
    <option *ngFor="let s of sports" [value]="s">{{s.Name}}</option> 
</select> 

我無法獲得它的工作。我也嘗試綁定只是ID,但不能得到那個工作。 See Plnkr here

我以角站點的'quickstart'live plnkr爲例作爲基礎。

我得到的錯誤是:

不能綁定到「ngModel」,因爲它不是「選擇」的已知屬性。

更新

感謝君特。我意識到我需要從RC4更新到RC5。我已經嘗試使用角度「形式」plnkr示例相同的事情(所以表單模塊被加載)。我仍然無法使它與RC5一起工作。是否有可能將一個select綁定到一個「對象」,還是必須是一個像數字一樣的值類型?謝謝。

Second plnkr

解決方案

看到兩個岡特的回答和評論。 我從RC4升級到RC5,導入了FormsModule,並且必須在'option'元素上使用[ngValue]而不是[value]。

<select [(ngModel)]="selectedSport"> 
    <option *ngFor="let s of sports" [ngValue]="s">{{s.Name}}</option> 
</select> 
+0

見註釋我的回答如下。 –

回答

1

您需要加載形式模塊

import { FormsModule } from '@angular/forms'; 

@NgModule({ 
imports: [ FormsModule, ... ], 
+1

我也有一種印象'[value]'也支持RC.5中的對象,但這似乎並不是這種情況。對於非字符串值,您仍然需要使用'[ngValue] =「...」'http://plnkr.co/edit/CG7btYCdRZQ2OgAyChn5?p=preview –

+1

太棒了。非常感謝Günter。現在我只需要從RC4升級到5 :) – user2444499