asp.net-mvc – MVC SelectList不能正常工作

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – MVC SelectList不能正常工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. List<SelectListItem> items = new List<SelectListItem>();
  2. if (a)
  3. {
  4. SelectListItem deliveryItem = new SelectListItem()
  5. {
  6. Selected = a.selected,Text = "Delivery",Value = "1"
  7. };
  8.  
  9. items.Add(deliveryItem);
  10. }
  11.  
  12. if (b)
  13. {
  14. SelectListItem pickupItem = new SelectListItem()
  15. {
  16. Selected = b.selected,Text = "Pickup",Value = "2"
  17. };
  18.  
  19. items.Add(pickupItem);
  20. }
  21.  
  22. SelectList selectList = new SelectList(items);
  23.  
  24. ViewData["OrderTypeList"] = selectList;

然后使用它

  1. Html.DropDownList("OrderTypeList")

呈现

  1. <select id="OrderTypeList" name="OrderTypeList"><option>System.Web.Mvc.SelectListItem</option>
  2. <option>System.Web.Mvc.SelectListItem</option>
  3. </select>

为什么它没有正确渲染选项?

解决方法

当你这样做时,你正在调用的构造函数方法
  1. SelectList selectList = new SelectList(items);

创建一组SelectListItems,它们本身指向SelectListItems(因此它是一个奇怪的选项,因为它只是在对象上调用ToString).而是直接将列表设置为ViewData键

  1. ViewData["OrderTypeList"] = items;

猜你在找的asp.Net相关文章