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的使用的更多相关文章

  1. jQuery 邮箱下拉列表自动补全

    综述 我想大家一定见到过,在某个网站填写邮箱的时候,还没有填写完,就会出现一系列下拉列表,帮你自动补全邮箱的功能.现在我们就用jQuery来实现一下. 博主原创代码,如有代码写的不完善的地方还望大家多 ...

  2. AngularJS下拉列表select在option动态变化之后多出了一个错误项的问题

    场景: Select初始化之后,选中select的某个选项 通过AngularJS更新select的选项 错误写法: HTML(使用ng-repeat) <div ng-app="Te ...

  3. 如何在select下拉列表中添加复选框?

    近来在给一个公司做考试系统的项目,遇到的问题不少,但其中的几个让我对表单的使用颇为感兴趣,前端程序员都知道,下拉列表有select标签,复选框有checkbox,但是两者合在一起却少有人去研究,当时接 ...

  4. Jquery、简单的下拉列表、网页左部导航菜单

    简单的下拉菜单.左部导航使用. 2016-5-13 记 效果图如下: <!DOCTYPE html> <html lang="en"> <head&g ...

  5. [WPF]带下拉列表的文本框

    控件我已经弄好了,代码比较多,所以没办法全面介绍. 一开始我是直接继承Selector类来实现,做是做出来了,不过发现性能不太好.于是,我就想着自己来实现.毕竟我是做给自己用的,也不考虑过多的东西,也 ...

  6. Android之Socket通信、List加载更多、Spinner下拉列表

    Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务 ...

  7. JS弹出模态窗口下拉列表特效

    效果体验:http://hovertree.com/texiao/js/20/ 或者扫描二维码在手机体验: 点击选择城市后,在弹出的层中的输入框,输入英文字母 h,会有HoverTree和Hewenq ...

  8. 11月8日下午Jquery取属性值(复选框、下拉列表、单选按钮)、做全选按钮、JSON存储、去空格

    1.jquery取复选框的值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...

  9. 下拉列表 select-option ; select-optgroup-option

    HTML中的下拉列表: <select> <option value ="1">Volvo</option> <option value  ...

随机推荐

  1. Response.End ,Response.Redirect、Server.Transfer 引发 “正在中止线程”异常的问题

    google后得知:Response.End 方法终止页的执行,并将此执行切换到应用程序的事件管线中的 Application_EndRequest 事件,同时抛出ThreadAbortExcepti ...

  2. javascript高级程序设计第3版——第6章 面向对象的程序设计

    第六章——面向对象的程序设计 这一章主要讲述了:面向对象的语言由于没有类/接口情况下工作的几种模式以及面向对象语言的继承: 模式:工厂模式,构造函数模式,原型模式 继承:原型式继承,寄生式继承,以及寄 ...

  3. Lapack求解线性方程组

    可参见这两个页面: 1. http://www.culatools.com/dense/lapack/ 2. http://www.netlib.org/lapack/lug/node1.html 根 ...

  4. Win10系列:C#应用控件进阶5

    多线形 多线形和多边形类似,不同点在于多线形中最后一个点和第一个点不会默认被连接.在多线形的点集中,可以存在同一个开始点和终结点因而会定义成闭合图形.下面将演示如何使用Polyline控件绘制一个多线 ...

  5. sqlserverdatasouce控件如何让添加删除修改自动化

    对于sqlserverdatasouce控件,添加插入修改和删除命令,可以自动删除修改更新数据,不需要编写一行代码,但是有时更新失败,原因在于选中了[开放式并发],这个选中,如果该表与其他的数据表关联 ...

  6. 微信中扫描二维码自动打开手机系统默认浏览器下载APP(APK)

    很多朋友问我怎么解决微信内点击链接或扫描二维码可以直接跳出微信在外部浏览器打开网页链接,其实这并不难,只要我们实现微信跳转功能即可.下面给大家介绍这个功能 功能目的 生成微信跳转链接,实现微信内置浏览 ...

  7. shutil

    import shutil#功能是将db文件中的内容拷贝到haha这个文件中去,但是haha原有的内容会被清空#shutil.copyfileobj(open('db','r',encoding='u ...

  8. 《程序设计入门——C语言》翁恺老师 第二周编程练习记录

    1 逆序的三位数(5分) 题目内容: 逆序的三位数: 程序每次读入一个正三位数,然后输出逆序的数字.注意,当输入的数字含有结尾的0时,输出不应带有前导的0.比如输入700,输出应该是7. 提示:用%1 ...

  9. Spring _day02_IoC注解开发入门

    1.Spring IoC注解开发入门 1.1 注解开发案例: 创建项目所需要的jar,四个基本的包(beans core context expression ),以及两个日志记录的包,还要AOP的包 ...

  10. linux下jdk8安装

    --- 解压命令不管用 添加插件 yum install tar --- 上传命令不管用 添加插件 wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20 ...