を変更したときに結合を選択し、HTMLは次のように選択する必要がありangular2:ます。myList = [「オプション1」、「オプション2」、「オプション3」]は、オプションのコレクションは、私がangular2を使用しています
を聞かせて<select class="form-control" id="myList" [(ngModel)]="mySelectedItem">
<option value="">{{ "ALL" }}</option>
<option *ngFor="let item of allItems" [value]="item">{{item}}</option>
</select>
例を期すために
allItemsコレクションが変更されるまで、これはすべて正常に動作します。ユーザが最初にページを提示されると、彼らは彼らの優先オプションとして「option1」を選択する。今、javascriptはallItemsコレクションを変更し、 "option1"を有効なオプションとして削除します。その時点で、選択は何も表示しません。
Selectの値がAllItemsコレクションの既知の値でない場合、Selectに最初のオプション "ALL"が表示されます。
myListコレクションの値は、JavaScriptの他のロジックに基づいて自動的に変更されます。
誰かがこれを達成する方法をアドバイスできますか?
あなたのts/jのいくつかを表示できますか? – itamar
'allItems'配列が変更されたときに' mySelectedItem'オブジェクトを消去するか、 'mySelectedItem'が' allItems'配列の中にあるかどうか少なくともチェックしてください。 – Riccardo
私はきれいなオプションを試すことができますが、選択した(ngModelChange)イベントでmySelectedItemを変更すると、一種の無限ループが発生する可能性があります。とにかく私はそれに行くだろう。 – Slicc