我有AA html.dropdownlistfor該名單約900項設置預選項目的html.dropdownlistfor
Html.DropDownListFor(m => m.ParentWebContentID, null, "Choose...", htmlAttributes: new { @class = "form-control" })
我希望它有個預選項目,並認爲第三個參數(「選擇...」)是爲了這個。
所以我安排了一個ViewBag變量來保存的值(ChosenParentWebContentId) 這樣
public ActionResult Create(int? id)
{
if (!AccountController.IsInRole(System.Web.HttpContext.Current.User.Identity.Name, "admin"))
{
return RedirectToAction("Index");
}
ViewBag.ParentWebContentID = GetWebContentListwithGroup(null);
if(id != null)
{
ViewBag.ChosenParentWebContentID = db.WebContent.FirstOrDefault(x => x.WebContentID == id).ParentWebContentID;
}
ViewBag.WebContentTypeID = db.WebContentType.ToList();
ViewBag.ContentTypeID = id;
ViewBag.LanguageCode = new SelectList(db.WebLanguage, "LanguageCode", "DisplayName");
ViewBag.CreatedByUserID = new SelectList(db.AspNetUsers, "Id", "Email");
ViewBag.LastEditedByUserID = new SelectList(db.AspNetUsers, "Id", "Email");
ViewBag.DetailList = db.WebContentDetail.Where(x => x.WebContentID == id).ToList();
return View();
}
我試圖改變「選擇...」與ViewBag變量,但沒有奏效。有沒有其他方法可以做到這一點?
我找不到圍繞互聯網其他例子任何幫助。
第三個參數用於生成'null'標籤選項。不要使用ViewBag(使用視圖模型),你需要將你的下拉列表綁定到模型屬性 - 例如'@ Html.DropDownListFor(m => m.SelectedValue,Model.Options。「Choose ...」,new {..})'。舉例來說,參考[這個DotNetFiddle](https://dotnetfiddle.net/5ewluv) –