0
为什么我的下拉列表的初值没有显示? 我正在使用为什么我的dropdownlist的初始值没有显示?
@Html.DropDownList("DropDownValues", new SelectList(ViewBag.sellectedSubjectsId, "Initial Value"));
我在做什么错?
感谢您的帮助。
为什么我的下拉列表的初值没有显示? 我正在使用为什么我的dropdownlist的初始值没有显示?
@Html.DropDownList("DropDownValues", new SelectList(ViewBag.sellectedSubjectsId, "Initial Value"));
我在做什么错?
感谢您的帮助。
尽量避免使用像ViewBag
ViewData
和动态工具和操作方法,并在视图之间传输数据。使用强类型的视图模型。
假设你的看法是创建一个新的课程,其中用户必须选择从主题列表中选择一个主题,像这样创建
public class CourseVM
{
public List<SelectListItem> Subjects { set;get;}
public int SelectedSubject { set;get;}
public CourseVM()
{
Subjects=new List<SelectListItem>();
}
}
而在你GET
动作视图模型,创建一个对象你查看模型并填写“主题”属性。
public ActionResult Create()
{
var vm=new CourseVM();
//the below is for demo. replace with database data
vm.Subjects.Add(new SelectListItem{ Value="1", Text="Maths"});
vm.Subjects.Add(new SelectListItem{ Value="2", Text="English"});
return View(vm);
}
现在在您的视图中,强烈键入您的视图模型。
@model CourseVM
@using (Html.BeginForm())
{
//Other form elements as well
@Html.DropdownListFor(x=>x.SelectedSubject,
new SelectList(Subjects,"Value","Text"),"Select one")
<input type="submit" />
}