Html.DropDownList传值
Html.DropDownList传值:
可以传入明确的IEnumerable<SelectListItem>,也可以通过ViewBag或者ViewData隐式地传入,前提是需要相同的名称,比如:ViewBag.GenreId或者ViewData["GenreId"]。
示例:
public ActionResult Index()
{
var SelectItems = new List<dynamic>(){
new { id = , name="刘新"},
new { id = , name="小明"},
new { id = , name="蛋蛋"}
};
//SelectList : 使用SelectList辅助类构建
ViewBag.SelectItem = new SelectList(SelectItems, "id", "name", ); //使用SelectListItem对象集合
var SexItems = new List<SelectListItem>{
new SelectListItem{ Text="男", Value="", Selected=true},
new SelectListItem{ Text="女", Value=""}
};
return View(SexItems);
}
视图:
@model IEnumerable<System.Web.Mvc.SelectListItem>
//使用ViewBag或者ViewDate隐式传入,通过@Html.DropDownList指定的name匹配ViewBag或者ViewDate的属性值(不指定第二个参数默认是根据指定的name去ViewBag或者ViewData查找同名的属性)
@Html.Label("person_id", "人员"): @Html.DropDownList("SelectItem", null, new { id = "person_id" })<br/>
//也可以将ViewBag.SelectItem转换成IEnumerable<SelectListItem>
@Html.Label("person_id", "人员"): @Html.DropDownList("SelectItem", ViewBag.SelectItem as IEnumerable<SelectListItem>, new { id = "person_id" })<br/>
//使用强类型视图对象填充select, 需要声明Model的类型
@Html.Label("sex", "性别"): @Html.DropDownList("sex", Model, new { id = "sex" })
注意:
1. @Html.Label的第一个参数表示for特性的值, 第二个参数表示lable文本
2. SelectList是IEnumerable<SelectListItem>的进一步封装而已。可以根据不同的场景选择使用哪一种
3. 将SelectList转换成IEnumerable<SelectListItem>会丢失默认选择的项
执行结果:
生成的代码:
<label for="person_id">人员</label>:
<select id="person_id" name="SelectItem">
<option value="1">刘新</option>
<option selected="selected" value="2">小明</option>
<option value="3">蛋蛋</option>
</select>
<br/>
<label for="person_id">人员</label>:
<select id="person_id" name="SelectItem">
<option value="1">刘新</option>
<option value="2">小明</option>
<option value="3">蛋蛋</option>
</select>
<br />
<label for="sex">性别</label>:
<select id="sex" name="sex">
<option selected="selected" value="1">男</option>
<option value="0">女</option>
</select>
Html.DropDownList传值的更多相关文章
- ASP.NET MVC中,前台DropDownList传值给后台。
List<SelectListItem> ZH = new List<SelectListItem>(); ZH.Add(new SelectListItem { Text = ...
- DropDownList单选与多选下拉框
一.单选DropDownList传值 1.添加界面的DropDownList显示值问题 (1)在方法内添加ViewData的方法: var ad = new UnitsRepository(); Vi ...
- Asp.net mvc页面传值-- dropdownlist
后台传值 List<ConfigParamInfo> paramList = configParamBLL.GetModelList(" and parentID=1" ...
- Dropdownlist中用viewmodel传值处理方法
背景:MVC框架,页面使用razor语法,下拉框的话使用了@Html.DropDownList(),以前传值使用viewdata,但是我们老大说这个方式比较low,希望我可以使用viewmodel的方 ...
- dropdownlist无刷新传值
既然局部刷新,其实没有必要用服务器控件,即便用了服务器控件,也不应该将AutoPostBack="true" ,这将导致页面回发并刷新,因此去掉下拉框的该属性 至于局部改变div的 ...
- Ado.net[登录,增删改查,Get传值,全选,不选,批量删除,批量更新]
[虽然说,开发的时候,我们可以使用各种框架,ado.net作为底层的东西,作为一个合格的程序员,在出问题的时候我们还是要知道如何调试] 一.增删改查 cmd.ExecuteReader();执行查询, ...
- Ado.net[增删改查,GET传值]
1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Home.aspx.c ...
- ASP.NET MVC 下拉框的传值的两种方式
以前使用WebForm变成时,下拉框传值只需直接在后台绑定代码就可以了.现在我们来看看在MVC中DropDownList是如果和接受从Controller传过来的值的. 第一种:使用DropDownL ...
- [moka同学笔记]yii2.0 dropdownlist的简单使用(一)
1.controller控制中 $modelCountrytelCode = CountryTelCode::find()->orderBy('id DESC')->all(); $tel ...
随机推荐
- docker 配置 overlay 存储
1.查看overlay模块是否安装 lsmod | grep over 2.将OverlayFS加到module目录下 echo "overlay" > /etc/modul ...
- StringBudiler源码简单解析
StringBudiler源码 继承关系树 底层实现 默认容量() 特别的添加方法(append) 1.继承关系树 继承自AbstractStringBuilder与StringBuffer同族 2. ...
- springMVC请求注解@RequestMapping各个属性值
最近遇到了一个采用fastJson传输数据的方式,搞了半天,总是感觉模糊,觉得自己有必要在这里做一个系统的总结,今天先从@RequestMapping的属性开始,采用REST 风格的 URL 请求,R ...
- Express-及中间件的简单理解
Express Express 是一个基于node平台,保持最小规模的灵活的 Node.js Web 应用程序开发框架,在Node.js基础上扩展对了web应用开发所需要的基础功能为 Web 和移动应 ...
- Linux之E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?
解决 ubantu系统中 E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? 的 问题. 1.解决办法: 当我们有的时候在使用apt-get install/update ...
- 洛谷P2523 [HAOI2011]Problem c(计数dp)
题面 luogu 题解 首先,显然一个人实际位置只可能大于或等于编号 先考虑无解的情况 对于编号为\(i\),如果确认的人编号在\([i,n]\)中数量大于区间长度,那么就无解 记\(S[i]\)表示 ...
- OPENERP 拓展 res.partner 对象,添加QQ号
公司最近在导入开业物品资料,根据同事的需求,需要在供应商资料中添加QQ号一项,根据前段时间自己摸索的经验,准备自己尝试通过继承完成这一需求. 模块名定义为rainsoft_partner 创建__in ...
- html-css-js基本理解和简单总结
目录 一.对于网页的基本理解 1.网页是一种数据展示和信息交互的载体 2.网页组成部分 3.支撑一个网页的技术模块 二.html的理解和技术笔记 1.html理解 2.html技术笔记-html标签 ...
- spring中排除某个类
在spring中可能需要排除某个类,做法是在spring配置文件中加入如下配置 <context:component-scan base-package="com.ias" ...
- Bunder: What does :require => nil in Gemfile mean?
https://stackoverflow.com/questions/12200215/bunder-what-does-require-nil-in-gemfile-mean Require ni ...