2016-09-12 7 views
2

私は角2アプリでフォームの値を取得する簡単な方法としてname属性とngModelディレクティブを使用します。なぜngModelが空白/空のオプションを選択に追加するのですか?

<input type="text" name="firstName" ngModel> 

しかしselectにこのアプローチを使用しているとき、私は問題を抱えている:

<select name="gender" ngModel> 

ngModelで選択すると、空白/空のオプションがレンダリングされます。 ngModelなし

ngModel

enter image description here

enter image description here

はここplunkerです:http://plnkr.co/edit/hwF2U7WHp1U8IQnVGEXv?p=preview

私は何かが欠けているか、これはバグであるだろうか?

+0

は、任意のオプションに一致するだけではなく、デフォルト値を追加しました。とにかく 'ngModel'を何に追加しますか? –

+0

NgModelでは、その値がモデル値にバインドされているため空です。ジェンダーをデフォルトで選択する場合は、ジェンダー値をモデルに設定します。例えば。 [(ngModel)] = "Model.value"双方向バインディング。 – Jeet

+0

[なぜanglejsにselectで空のオプションが含まれているのですか?](http://stackoverflow.com/questions/12654631/why-does-angularjs-include-an-empty-option-in-select) –

答えて

1

あなたは

gender: string = 'male'; 

<select name="gender" [(ngModel)]="gender"> 

を使用する場合は、目的の結果を得ることができます。このようにngModelを使用する場合は、getFormDataメソッドも必要ありません。空のオプションではありません

Plunker example

関連する問題