zoukankan      html  css  js  c++  java
  • MVC视图中Html.DropDownList()辅助方法的使用

    我们先在控制器中准备好一个SelectList类型,然后通过ViewBag.List传入视图中。SelectList类型是ASP.NET MVC专门为列表有关的HTML辅助方法提供选项的,例如,Html.DropDownList()、Html.ListBox()都可以使用。

    1 public ActionResult HelperDropDownList()
    2         {
    3             List<SelectListItem> listItem = new List<SelectListItem>{
    4                 new SelectListItem{Text="",Value="1"},
    5                 new SelectListItem{Text="",Value="0"}
    6             };
    7             ViewBag.List = new SelectList(listItem,"Value","Text","");
    8             return View();
    9         }

    然后在视图中就可以创建下拉列表了。

    @Html.DropDownList("List", ViewBag.List as SelectList, "请选择")

    渲染的HTML是这样的:

    1 <select name="List" id="List">
    2 <option value="">请选择</option>
    3 <option value="1"></option>
    4 <option value="0"></option>
    5 </select>

    还有,若是后台数据使用ViewData传到视图时,可以这样写:

     1 //后台用ViewData传值到页面,或者用ViewBag
     2 public ActionResult HelperDropDownList()
     3         {
     4             List<SelectListItem> listItem = new List<SelectListItem>{
     5                 new SelectListItem{Text="是",Value="1"},
     6                 new SelectListItem{Text="否",Value="0",Selected=true}
     7             };
     8             //ViewBag.List = new SelectList(listItem, "Value", "Text", "");
     9             ViewData["List"] = new SelectList(listItem, "Value", "Text", ""); 
    10             return View();
    11         }
    1 @using (Html.BeginForm("DropDownValue","Home"))
    2 {
    //只需将第一个参数写成对应的ViewData索引即可,或者对应的ViewBag索引
    3 @Html.DropDownList("List","请选择") 4 <div> 5 <input type="submit" value="提交" /> 6 </div> 7 }

     --------------------------------------------------------------------------------------------------------------

    那么,在视图页面的下拉列表被选择的值怎么传到Controlloer的方法进行处理呢?可以这样:

    1 @using (Html.BeginForm("DropDownValue","Home"))
    2 {
    3     @Html.DropDownList("List", ViewBag.List as SelectList, "请选择")
    4     <div>
    5         <input type="submit" value="提交" />
    6     </div>
    7 
    8 }

    将下拉列表置于表单当中,当表单提交时,被选中的值就被提交到控制器方法。

    1 public ActionResult DropDownValue(string List)
    2 {
    3       ViewBag.Result = List;
    4       return View();
    5 }

    注意接受值的方法的参数名称与html标签的id保持一致性。

  • 相关阅读:
    软链接mongo
    添加系统路径
    安装mongodb扩展
    查看php扩展
    查看mongodb状态
    phpExcel 替代 产品, 可导出10W数据,无压力
    饭饭之辈 200 Vue2.0生命周期(组件钩子函数与路由守卫)
    vue 父组件监听子组件事件,emit携带参数,且父组件也自带参数问题
    xlswriter 使用文档,快速写入xls 支持 2007以上的版本
    vue 中组件传值问题
  • 原文地址:https://www.cnblogs.com/wangyihome/p/4533801.html
Copyright © 2011-2022 走看看