2

我正在制作一个 MVC4 网络应用程序供 2 所大学的同龄人使用,稍后我将扩展到其他学校。在我目前的模型中

       public string school { get; set; }

我会喜欢的,所以当我这样做的时候

       @Html.EditorFor(model => model.school)

这将是“学校 1”和“学校 2”的下拉列表。

我怎样才能干净地做到这一点?如果可以的话,我希望能够在模型中进行更改,并且除了调用@Html.EditorFor 之外不必在视图中做任何事情。如果完成此操作的唯一方法是在视图中执行某些操作,那也可以。

4

2 回答 2

4

而不是Html.EditorFor你可以使用Html.DropDownListFor

@{
   var items = new SelectList(new[]
                   {
                       new SelectListItem {Text = "School1", Value = "School1"},
                       new SelectListItem {Text = "School2", Value = "School2"},
                   }, "Text", "Value");
}

@Html.DropDownListFor(x => x.school, @items)
于 2012-05-03T06:15:36.960 回答
1

您可以使用上面的代码,也可以在页面中使用此代码。

@Html.DropDownListFor(model => model.Status, new List<SelectListItem>
                    {
                       new SelectListItem{ Text="New", Value = "New" },
                       new SelectListItem{ Text="InProcess", Value = "InProcess" },
                       new SelectListItem{ Text="Completed", Value = "Completed" },
                       new SelectListItem{ Text="Rejected",Value="Rejected"},

                    }, "Select Status", new { @class = "form-control select2_demo_4" })

这肯定会对您有所帮助,并且当您选择其中任何一个时,您都可以获得模型的价值。

于 2019-07-18T10:08:53.040 回答