2017-01-12 24 views
0

私は独立して動作する2つのケースがあります。モデルに問題があり、ドロップダウンのプレースホルダがあります

モデルデータがドロップダウンにあることがわかっている場合は、このコードを使用します。 CarIDnullある場合

 @Html.DropDownListFor(model => model.CarID, (SelectList)ViewBag.Cars, htmlAttributes: new { @class = "form-control" }) 

しかし、これに伴う問題は、リストの最初の項目は、ドロップダウンで選択されたプリあろう。

そして、別の形で、私はこの1つを使用します。

@Html.DropDownListFor(model => model.CarID, "--Select a Car--", (SelectList)ViewBag.Cars, htmlAttributes: new { @class = "form-control" }) 

私のコントローラは、ビューのデータを提供するためにこれを持っている:

ViewBag.Cars = new SelectList(db.Units, "CarID", "Name", model.CarID); 

は、それは意志、私が使用することができ、これらのものがありますモデルデータが現場を埋めるために存在しない場合にのみプレースホルダーを持っていますか?あなたの第二のアプローチで

答えて

1

、あなたは、間違って

のヘルパーメソッドを使用していることは、これが最初の(そしてデフォルト項目として、「1つ選択」オプションを使用してドロップダウンをレンダリングします

@Html.DropDownListFor(model => model.CarID,(SelectList)ViewBag.Cars, 
              "Select one", new { @class = "form-control" }) 

する必要があります)、何もあらかじめ選択されていない場合(model.CarIDnull)です。 Model.CarIDに有効な値がある場合、対応するオプションが選択されます。

Model.CarIDがヌルでないときに「選択」を削除したい場合は、選択したオプションを確認して必要に応じて削除するために、ドキュメントの読み込み(jQueryドキュメントの準備:)で実行するjavascriptを書くことができます。

+0

Ohhhhhh gotcha!ありがとう。私は長い間そのようにそれを使用して...決して知らなかった! –

+0

まあ、実際には私はまだそれに問題が表示されていない。私のenum seleectListで、それはうまく動作しますが、この1つでは動作しません。 –

+0

何が表示されないのですか? – Shyju

関連する問題