我对生成的droplist有问题,它显示如下:
<select id="selIntervalStartTime" name="selIntervalStartTime"><option>System.Web.Mvc.SelectListItem</option><option>System.Web.Mvc.SelectListItem</option><option>System.Web.Mvc.SelectListItem</option><option>System.Web.Mvc.SelectListItem</option></select>
在我的代码中,我有:
List<SelectListItem> si = new List<SelectListItem>();
for (int i = 0; i < 23; i++)
{
si.Add(new SelectListItem { Text = i.ToString(), Value = i.ToString() });
}
return View("ScheduleEdit",
new ScheduleEditViewModel
{
selIntervalStartTime = new SelectList(si)
});
如何修复此问题,以便i.ToString()显示为值和文本?
/ M
答案 0 :(得分:5)
List<int> si = new List<int>();
for (int i = 0; i < 23; i++)
{
si.Add(i);
}
return View("ScheduleEdit",
new ScheduleEditViewModel
{
selIntervalStartTime = new SelectList(si)
});
或
List<SelectListItem> si = new List<SelectListItem>();
for (int i = 0; i < 23; i++)
{
si.Add(new SelectListItem { Text = i.ToString(), Value = i.ToString() });
}
return View("ScheduleEdit",
new ScheduleEditViewModel
{
selIntervalStartTime = new SelectList(si,"Text","Value")
});
答案 1 :(得分:3)
一切都很好只需要2个参数:
selIntervalStartTime = new SelectList(si,"Text", "Value");