MVC下拉框的传值的两种方式
                                            http://www.cnsendblog.com/index.php/?p=137
GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
http://cnsendnet.taobao.com
为樟树等地区用户提供了全套网页设计制作服务,及樟树网站建设行业解决方案。主营业务为成都网站建设、成都网站制作、樟树网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
以前使用WebForm变成时,下拉框传值只需直接在后台绑定代码就可以了。现在我们来看看在MVC中DropDownList是如果和接受从Controller传过来的值的。
第一种:使用DropDownList
控制器代码:1.  public ActionResult Index()  
2.  {  
3.    
4.      //1.1查询YzSeriesEntity的数据  
5.      List seriesList = seriesBLL.LoadEnities().ToList();  
6.      //1.2将YzSeriesEntity的数据封装到 SelectList中,制定要生成下拉框选项的value和text属性  
7.      SelectList selList1 = new SelectList(seriesList, "SerialName", "SerialName");  
8.    
9.      //2.1查询YzDivisionEntity的数据  
10.     List divisionList = divisionBLL.LoadEnities().ToList();  
11.     //2.2讲YzDivisionEntity的数据封装到 SelectList中,制定要生成下拉框选项的value和text属性  
12.     SelectList selList2 = new SelectList(divisionList, "DivisionName", "DivisionName");  
13.   
14.     //3.调用Selectlist的As方法,自动生成SelectListItem集合,并存入ViewBag中  
15.     ViewBag.selList1 = selList1.AsEnumerable();  
16.     ViewBag.selList2 = selList2.AsEnumerable();  
17.      
18.     return View();  
19. }  
  视图代码:
1.    
2.    
3.      @using (Ajax.BeginForm("Add", new AjaxOptions() { OnSuccess = "afterAdd" }))  
4.      {  
5.            
6.                
7.                  编号:   
8.                    
9.                      @Html.TextBox("StaffID")  
10.                    
11.                
12.               
13.                 姓名:   
14.                 @Html.TextBox("StaffName")   
15.                
16.               
17.                 性别:   
18.                   
19.                     男  
20.                     女  
21.                    
22.                
23.               
24.                 所在系列:   
25.                   
26.                     @Html.DropDownList("SerialName", ViewBag.selList1 as IEnumerable)  
27.                     
28.                
29.               
30.                 科室或年级组:   
31.                   
32.                     @Html.DropDownList("DivisionName", ViewBag.selList2 as IEnumerable)  
33.                     
34.                
35.               
36.                 任课学科:   
37.                   
38.                     @Html.TextBox("Subjects")  
39.                    
40.                
41.               
42.                 聘任日期:   
43.                   
44.                     @Html.TextBox("EngageDate")  
45.                    
46.                
47.               
48.                 参加工作日期:   
49.                   
50.                     @Html.TextBox("WorkDate")  
51.                    
52.                
53.               
54.                 职称:   
55.                   
56.                     @Html.TextBox("jobQualification")  
57.                    
58.                
59.               
60.                 身份证号:   
61.                   
62.                     @Html.TextBox("IdentityCard")  
63.                    
64.                
65.   
66.         
  
67.     }  
68.   
69.   
效果显示:
第二种:使用
视图代码:1.    
2.    
3.      @Html.Label("请选择权重:")  
4.        
5.            
7.        
8.    
控制器代码:
- //下拉框对应的列表
- public ActionResult ListOption()
- {
- //2.1.查询出weight实体,并将其转成DTO类型
- ListweightList = 
- weightBLL.LoadEnities().ToList().Select(s => s.ToDto()).ToList();
- //2.2返回json
- return Json(weightList, JsonRequestBehavior.AllowGet);
- }
 效果显示: 
 总结:
 两种传值方式的比较:
 第一种是控制器通过ViewBag传值,前台通过@Html.DropDownList接收;第二种是通过Json传值,前台通过url绑定valueField和textField的值来获取数据。两者没有什么太大的不同,但是由于传值使用接收的,使用的是HTML标签,所以还可以用来绑定其他的js事件,所以如果有功能需要的话,后者要比前者灵活些。
http://www.cnsendblog.com/index.php/?p=137
GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
http://cnsendnet.taobao.com
当前题目:MVC下拉框的传值的两种方式
当前链接:http://www.scyingshan.cn/article/jgedch.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 