关于下拉列表HtmlDownlistFor的使用
1.定义下拉列表需要的数据
public static List<SelectListItem> GetProList()
{
List<SelectListItem> items = new List<SelectListItem>
{
new SelectListItem { Text = "全部", Value = "0" },
new SelectListItem { Text = "未上架", Value = "1" },
new SelectListItem { Text = "已上架", Value = "2" }
};
return items;
}
2.在需要使用的地方,将下拉列表数据传递到前台.
ViewBag.ProList= GetProList();//可伴随传递到前台的Model.Pro一起使用,给下拉框一个默认值。
3.视图页绑定集合以及选中值给下拉框。
@{
var selectList = new SelectList(ViewBag.ProList as List<SelectListItem>, "Value", "Text", item.Pro);
}
//使用列表的指定项,数据值字段,数据文本字段,和选定的值来初始化SelectList类的新实例。
@Html.DropDownListFor(modelItem => item.Pro, selectList, new { @class = "form-control", id = "dd_pro" })
//modelItem 是foreach(var modelItem in list)的字段。item.Pro是默认选中的值。selectList是下拉列表的实例。
4.传递给后台当前选中值。
var Pro = $(this).parent("td").parent("tr").children().eq().find(":selected").text().trim();
//$(this).parent("td").parent("tr").children().eq(6) 是本下拉框在表格中的位置。
//find(":selected")下拉框当前选中项。这里需要的.text()是其显示文本。也可以根据需要传递其真实值。
5.如果只是单纯使用下拉框,也可以用@Html.DropDownList 。
//前台页面:
@Html.DropDownList("DropDownlist", ViewData["TestList"] as List<SelectListItem>, new { @class = "form-control", id = "ddl_process" })
//后台界面:
public ActionResult TestView()
{
ViewData["TestList"] = GetTestList(); //传递下拉列表数据
return View();
}
//定义一个包含需要的下列列表数据集合
public static List<SelectListItem> GetTestList()
{
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem { Text = "One", Value = "" });
items.Add(new SelectListItem { Text = "Two", Value = "" });
items.Add(new SelectListItem { Text = "Three", Value = "" });
items.Add(new SelectListItem { Text = "Four", Value = "" });
return items;
}
以上是最近所做项目中遇到的问题——MVC中用到的一些辅助方法。备以记录,以供查询。
关于下拉列表HtmlDownlistFor的使用的更多相关文章
- jQuery 邮箱下拉列表自动补全
综述 我想大家一定见到过,在某个网站填写邮箱的时候,还没有填写完,就会出现一系列下拉列表,帮你自动补全邮箱的功能.现在我们就用jQuery来实现一下. 博主原创代码,如有代码写的不完善的地方还望大家多 ...
- AngularJS下拉列表select在option动态变化之后多出了一个错误项的问题
场景: Select初始化之后,选中select的某个选项 通过AngularJS更新select的选项 错误写法: HTML(使用ng-repeat) <div ng-app="Te ...
- 如何在select下拉列表中添加复选框?
近来在给一个公司做考试系统的项目,遇到的问题不少,但其中的几个让我对表单的使用颇为感兴趣,前端程序员都知道,下拉列表有select标签,复选框有checkbox,但是两者合在一起却少有人去研究,当时接 ...
- Jquery、简单的下拉列表、网页左部导航菜单
简单的下拉菜单.左部导航使用. 2016-5-13 记 效果图如下: <!DOCTYPE html> <html lang="en"> <head&g ...
- [WPF]带下拉列表的文本框
控件我已经弄好了,代码比较多,所以没办法全面介绍. 一开始我是直接继承Selector类来实现,做是做出来了,不过发现性能不太好.于是,我就想着自己来实现.毕竟我是做给自己用的,也不考虑过多的东西,也 ...
- Android之Socket通信、List加载更多、Spinner下拉列表
Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务 ...
- JS弹出模态窗口下拉列表特效
效果体验:http://hovertree.com/texiao/js/20/ 或者扫描二维码在手机体验: 点击选择城市后,在弹出的层中的输入框,输入英文字母 h,会有HoverTree和Hewenq ...
- 11月8日下午Jquery取属性值(复选框、下拉列表、单选按钮)、做全选按钮、JSON存储、去空格
1.jquery取复选框的值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- 下拉列表 select-option ; select-optgroup-option
HTML中的下拉列表: <select> <option value ="1">Volvo</option> <option value ...
随机推荐
- 『高性能模型』Roofline Model与深度学习模型的性能分析
转载自知乎:Roofline Model与深度学习模型的性能分析 在真实世界中,任何模型(例如 VGG / MobileNet 等)都必须依赖于具体的计算平台(例如CPU / GPU / ASIC 等 ...
- 嵌套if-esle语句
C语言自学之嵌套if-esle语句 Dome : 获奖条件为年销售业绩100万以上,并且入职满两年的员工.小明进入公司1年,销售业绩为120万. 在代码编辑器中使用嵌套if-else语句判断小明是否有 ...
- Hadoop 2.7.4 HDFS+YRAN HA删除datanode和nodemanager
当前集群 主机名称 IP地址 角色 统一安装目录 统一安装用户 sht-sgmhadoopnn-01 172.16.101.55 namenode,resourcemanager /usr/local ...
- idea 本地tomcat启动控制台乱码问题
问题:本地tomcat启动,控制台出现中文乱码: 解决办法: 安装了idea发现启动tomcat的时候控制台会有乱码问题,在tomcat配置中添加在VM options填写-Dfile.encodin ...
- vue+vue-cli+淘宝lib-flexible做移动端自适应
总结用vue+vue-cli+淘宝lib-flexible做移动端自适应方案: 1.安装淘宝lib-flexible npm install lib-flexible --save 2.在入口文价ma ...
- A锚点实现,滚动页面内容改变tab选项
Css: ul{margin:0;padding:0;list-style:none;} a{ text-decoration: none; outline:none; -webkit-tap-hig ...
- hdu多校第4场E. Matrix from Arrays HDU 二维前缀和
Problem E. Matrix from Arrays Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total S ...
- Oracle单机Rman笔记[6]---记一次oracle脱机异地还原
系统情况介绍 正式环境:windows 2008 r2-32bit/ Oracle: Release 11.2.0.1.0 目标环境:windows 2012 Standard-64bit / Ora ...
- os.path官方文档(附翻译)
This module implements some useful functions on pathnames. To read or write files see open(), and fo ...
- postman安装
安装包下载下来,解压缩到你喜欢的位置. 打开 Chrome 浏览器的「扩展程序」 点击「加载已解压的扩展程序...」按钮,找到你刚刚下载的安装包的位置,点击确定. 你去看看 Windows 的开始菜单 ...