问题描述
我想使用“自定义范围”在MVC中创建DropDown,因为“开始”为2000,“结束”为“当前Yaer”。
public static void BindYearDropDown(ref DropDownList dropDown,int startYear,int endYear)
{
dropDown.Items.Clear();
for (int i = startYear; i <= endYear; i++)
{
dropDown.Items.Add(new ListItem(ConvertTo.String(i),ConvertTo.String(i)));
}
}
解决方法
更改模型中的代码
public string years{ get; set; }
public List<SelectListItem> yearList{ get; } = new List<SelectListItem>();
public static void BindYearDropDown(int startYear,int endYear)
{
for (int i = startYear; i <= endYear; i++)
{
yearList.Add(new SelectListItem{Text = ConvertTo.String(i),Value =
ConvertTo.String(i)});
}
}
在这样的控制器中设置
//Pass value as per your requirements in BindYearDropDown()
model.BindYearDropDown(2000,endyear);
您认为
@Html.DropDownListFor(m => m.years,Model.yearList,null,new { @class = "form-control",id = "years" }