あなたがDropDownListForはどこからモデルを取得しますか?
@Html.DropDownListFor(model => model.SelectedId, model.DropDownItems);
を使用してドロップダウンリストを作成することができますが、どこからmodel => model.SelectedId
ラムダに渡す値を取得DropDownListForていますか?
あなたがDropDownListForはどこからモデルを取得しますか?
@Html.DropDownListFor(model => model.SelectedId, model.DropDownItems);
を使用してドロップダウンリストを作成することができますが、どこからmodel => model.SelectedId
ラムダに渡す値を取得DropDownListForていますか?
SelectedIdは、モデル内のフィールドの整数にすぎません。
モデルは
return View(myModel);
を使用してコントローラから渡されたモデルは、そうdropdownboxの値がでSelectedId
フィールドとして設定されているトップ
@model mymodelnamespace.RoomBookingInsert
でビューで定義することができますあなたのモデル。
たとえば、適切なフィールド名はRoomNo
になります。
@Html.DropDownListFor(model => model.RoomNo, model.Rooms);
限りmodel.DropDownItems
(または私の例ではmodel.Rooms
)はその属性の値を持つ項目が含まれていて、それはそれは、デフォルトとして、リストで選択した項目として設定されます。
編集:
あなたはDropDownList
を使用する代わりに、むしろモデルよりも、viewbagを使用している場合。この上記
@Html.DropDownList("RoomNo",
new SelectList(ViewBag.Rooms as System.Collections.IEnumerable ?? Enumerable.Empty<SelectListItem>(), "RoomNo", "RoomName"),
new { @value = @ViewBag.RoomNo})
を(各入力は、モデルで使用するためfor
拡張子を有する)、ID RoomNo
と入力フォームを作成
ヌル場合空にデフォルトするSelectList
を使用します。表示される値とテキストを定義したフィールドは、選択リスト・パラメーターの最後に設定されます。
最後のビットは、デフォルト値を@ViewBag.RoomNo
の内容に設定します。
コントローラで選択リストを作成して、ドロップダウンオプションをviewbag.myselectList
エンティティに設定することもできます。
使用する 'モデル'が '公式'モデルではなく、一部のデータが 'ViewBag'で渡された場合はどうなりますか? – thecoop
DropdownListを使用します。私の答えを変えてください。 – Doomsknight