博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET MVC 让@Html.DropDownList显示默认值
阅读量:6817 次
发布时间:2019-06-26

本文共 1779 字,大约阅读时间需要 5 分钟。

          在使用@Html.DropDownList的过程中,发现它的用法很局限,比如在加载的时候显示设定的默认项或者调整它的显示样式,在网上查了一些资料,终于把这个问题解决了。

 

    一、View代码

        

 

[html]   
 
 
  1. @using (Ajax.BeginForm("Edit", new AjaxOptions() { OnSuccess = "afterEdit" }))  
  2. {  
  3.     @Html.HiddenFor(model => model.ID)  
  4.     @Html.HiddenFor(model => model.isUsed)  
  5.   
  6. <div style="padding: 40px 40px 30px 50px;">  
  7.     <table style="font-size:12px" align="center">  
  8.         <tr>  
  9.             <td>@Html.Label("评论人职务:")</td>  
  10.             <td>@Html.DropDownList("YzPositionCriticsID", ViewData["CriticsPositionType"] as SelectList)</td>  
  11.         </tr>  
  12.         <tr>  
  13.             <td>@Html.Label("被评论人职务:")</td>  
  14.             <td>@Html.DropDownList("YzPositionEvaluationID", ViewData["EvaluationPosition"] as SelectList)</td>  
  15.         </tr>  
  16.         <tr>  
  17.             <td>@Html.Label("权重:")</td>  
  18.             <td>@Html.TextBoxFor(model => model.Weight)</td>  
  19.         </tr>  
  20.     </table>  
  21. </div>  
  22.   
  23. }  

 

 

    二、Controller代码    

        

 

[csharp]   
 
 
  1. public ActionResult Edit(string id)  
  2. {  
  3.     //6.1根据ID从数据库中查出要修改的相关数据  
  4.     Guid Gid = new Guid(id);  
  5.     Model.DTO.YzWeightEntityDTO weight = weightBLL.LoadEnities(u => u.ID == Gid).FirstOrDefault().ToDto();  
  6.   
  7.     //6.2查询YzPositionEntity实体的数据  
  8.     List<Model.DTO.YzPositionEntityDTO> positionList = positionBLL.LoadEnities().ToList().Select(s => s.ToDto()).ToList();  
  9.   
  10.     //6.3将YzPositionEntity的数据封装到 SelectList中,制定要生成下拉框选项的value和text属性  
  11.     SelectList selList1 = new SelectList(positionList, "ID", "PositionType", weight.YzPositionCriticsID);  
  12.     SelectList selList2 = new SelectList(positionList, "ID", "PositionType",weight.YzPositionEvaluationID);           
  13.     
  14.     //6.4把生成的集合放到ViewData中  
  15.     ViewData["CriticsPositionType"] = selList1;  
  16.     ViewData["EvaluationPosition"] = selList2;  
  17.     return View(weight);  
  18. }   

 

 

     在这里需要注意的是:SelectList selList1 = new SelectList(list,"","",***),这里的***就是下拉框加载时候要显示的默认值。

     

     最后的显示效果如下:

     

    

     总结:

     在MVC的学习过程中,总会时不时遇到一些小问题,需要转个弯才能找到答案。在解决问题的过程中经验真的很重要,它能告诉你一个问题的突破点在什么地方;除此之外,熟练的使用API文档也是解决问题的重要途径;最后,真的发现解决问题是提高自己学习兴趣的不接动力。

 

转载于:https://www.cnblogs.com/webenh/p/6254720.html

你可能感兴趣的文章
iOS正则表达式
查看>>
关于javascript的this指向问题
查看>>
Promise的理解和用法
查看>>
java B2B2C Springboot电子商城系统-高可用的服务注册中心
查看>>
Dubbo的总体架构
查看>>
Spring Cloud微服务架构代码结构详细讲解
查看>>
以太经典硬分叉:矿工欢喜、投资者欢庆、社区高兴的“三赢”之举
查看>>
我的友情链接
查看>>
LVS启(禁)用成员
查看>>
innobackupex 备份报错
查看>>
2016 IT 运维工作计划及学习
查看>>
将一个数的二进制位模式从左到右翻转并输出
查看>>
jQuery学习之jQuery Ajax用法详解
查看>>
关于JEPLUS软件介绍——JEPLUS软件快速开发平台
查看>>
动态增加UIView到当前视图中
查看>>
怎么能看透信封
查看>>
css正方形照片墙
查看>>
找工作的程序员必懂的Linux
查看>>
shell脚本实现杨辉三角形
查看>>
ComponentOne 2019V1火热来袭!全面支持 Visual Studio 2019
查看>>