3种下拉列表生成方式汇总

1、自定义:

1 List<SelectListItem> list = new List<SelectListItem>(){
2  new SelectListItem(){ Text="请选择类型...", Value=""},
3  new SelectListItem(){ Text="所有", Value="0"},
4  new SelectListItem(){ Text="男人", Value="1"},
5  new SelectListItem(){ Text="女人", Value="2"},
6  new SelectListItem(){ Text="小孩", Value="3"}
7 };
8
9 ViewBag.ClassTypeList = list;

 

2、从数据源获取:

1 var oneList = new BLL.ZZ_OneClassBLL().GetModelList("Status=1");
2 
3 oneList.Insert(0, new ZZ_OneClass() { Id = 0, Name = "-请选择-" });
4 
5 ViewBag.OneClassList = new SelectList(oneList, "Id", "Name", selectedVaule);  //通过select生成

前台用DropDownList接收,其中DropDownList的第一个参数是下拉列表id,name的默认属性。

 

3、返回数据,前台拼接

 1 var twoList = new BLL.ZZ_TwoClassBLL().GetModelList("Status=1 and OneClassID=" + id);
 2 
 3 List<SelectListItem> list = new List<SelectListItem>();
 4 
 5foreach (var City in twoList)
 6 {
 7   list.Add(new SelectListItem { Text = City.Name, Value = City.Id.ToString() });
 8 }
 9 
10return Json(list, JsonRequestBehavior.AllowGet);

 

前2种是后台封装好数据,前台一个dropdownlist搞定;最后一个适用前台发送异步请求到后台,后台返回数据,前台拼接

 

状态保持:自定义时,可通过前台强类型; 也可以在后台给定选定值【 可通过同名属性自动装配】

posted @ 2018-02-28 15:36  查克拉的觉醒  阅读(326)  评论(0编辑  收藏  举报