Asp.net mvc MVC-下拉列表用于枚举-设置默认值
“我的下拉列表”可以使用以下代码正常工作:-Asp.net mvc MVC-下拉列表用于枚举-设置默认值,asp.net-mvc,asp.net-mvc-4,enums,Asp.net Mvc,Asp.net Mvc 4,Enums,“我的下拉列表”可以使用以下代码正常工作:- @Html.DropDownListFor(model => model.StopMonth, Enum.GetNames(typeof(Models.InputMonths)).Select(e => new SelectListItem { Text = e }), new { @class = "form-control"}) public enum InputMonths { January,
@Html.DropDownListFor(model => model.StopMonth, Enum.GetNames(typeof(Models.InputMonths)).Select(e => new SelectListItem { Text = e }), new { @class = "form-control"})
public enum InputMonths
{
January,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
}
但是当它显示在视图中时,我需要下拉菜单来显示——选择月份---
作为默认值。
这样我就可以在jQuery脚本中检查所需的验证
如何做到这一点?首先为枚举添加值
public enum InputMonths {
January = 1,
February = 2,
March = 3,
April = 4,
May = 5,
.
.
.
}
然后用以下材料装饰您的模型:
[Required]
[Range(1, 12, ErrorMessage = "Select a month"))]
public StopMonth StopMonth { get; set; }
最后:
@Html.DropDownListFor(
model => model.StopMonth,
Enum.GetNames(typeof(Models.InputMonths))
.Select(e => new SelectListItem { Text = e }),
"-- Select a month --",
new { @class = "form-control"})
StopMonth
null是否可为空?是..可以将null
设置为StopMonth
。您可以使用第三个参数为“-选择月--”的重载。不确定,但我认为您还需要设置SelectList
的值以及文本
属性tankx。。!这很容易。!