string deptId =Request.Form["depts"].Trim();

Html.DropDownList()赋默认值:

页面代码如下:

<% 
                List<SelectListItem> list = new List<SelectListItem> {

new SelectListItem { Text = "启用", Value = "0",Selected = true},

new SelectListItem { Text = "禁用", Value = "1" } };
  %>//list储存dropdownlist的默认值
 <%=Html.DropDownList("state",list,Model.state) %>  //state为实体的属性,默认选中"启用"

Html.DropDownList()从数据库读取值:

页面代码如下:

<%= Html.DropDownList("Category", ViewData["Categories"] as SelectList,"--请选择--",new { @class = "my-select-css-class" } )%>

Controllers代码:

public ActionResult Create()

{
        List<Category> categories = categoryService.GetAll();
        ViewData["Categories"] = new SelectList(categories, "Id", "Name");
        return View();
}

  • 原型一:

public static string DropDownList(this HtmlHelper htmlHelper, string name)

{

IEnumerable<SelectListItem> selectData = htmlHelper.GetSelectData(name);

return htmlHelper.SelectInternal(null, name, selectData, true, false, null);

}

第一种方式: List<SelectListItem> items = new List<SelectListItem>();

items.Add(new SelectListItem() { Text = "001", Value = "1", Selected = false });

items.Add(new SelectListItem() {Text = "002", Value = "2", Selected = false });

ViewData["items"] = items;

简化后:

var items = new List<SelectListItem>()

{

(new SelectListItem() {Text = "001", Value = "1", Selected = false}),

(new SelectListItem() {Text = "002", Value = "2", Selected = false})

};

将items值给ViewData:

ViewData["items"] = items;

在aspx中这样使用:

<%= Html.DropDownList("items") %>

生成的代码中,items将作为<select>标签的name和id值。

  • 原型二:
public static string DropDownList(this HtmlHelper htmlHelper, string name, IEnumerable<SelectListItem> selectList) {     return htmlHelper.DropDownList(name, selectList, null); }
使用方法:

<%= Html.DropDownList("items", new List<SelectListItem> {     (new SelectListItem() {Text = "001", Value = "1", Selected = false}),     (new SelectListItem() {Text = "002", Value = "2", Selected = false}) })%>

在这里,不需要ViewData传入值,第一个参数items作为标签的name和id的值。items也可以是任意的字符串。

  • 原型三
public static string DropDownList(this HtmlHelper htmlHelper, string name, string optionLabel) {     IEnumerable<SelectListItem> selectData = htmlHelper.GetSelectData(name);     return htmlHelper.SelectInternal(optionLabel, name, selectData, true, false, null); }

使用方法和第一种原型相同,string optionLabel作为一个缺省的空的选项。这样可以完成加入不需要选取任何选项的场景。

C#_dropdownlist_2的更多相关文章

随机推荐

  1. 进程间通信七 (socket)

    copyright:weishusheng          data:2015.5.26              摘要:socket又叫套接字或者插口,它也是进程间通信的一种方式,实际上就是网络上 ...

  2. Ramdisk文件系统的制作与调试运行

    开发环境:Fedora 9交叉编译工具链:arm-linux-gcc 4.3.2 with EABI嵌入式Linux内核版本:2.6.29.4-FriendlyARM.昨天写贴子的时候具体记不清了,今 ...

  3. Java开源项目(备查)

    转自:http://www.blogjava.net/Carter0618/archive/2008/08/11/221222.html Spring Framework  [Java开源 J2EE框 ...

  4. gitphp日期乱码解决方案

    出现日期乱码的在以下文件中 templates rss tag commitdiffplain log project commit 搜索文件中的 %z 修改为以下代码 {$commit->Ge ...

  5. c#保存datagridview中的数据时报错 “动态SQL生成失败。找不到关键信息”

    ilovejinglei 原文 C#中保存datagridview中的数据时报错"动态SQL生成失败.找不到关键信息" 问题描述     相关代码 using System; us ...

  6. SpannableStringBuilder 和 SpannableString

    EditText:         通常用于显示文字,但有时候也需要在文字中夹杂一些图片,比如QQ中就可以使用表情图片,又比如需要的文字高亮显示等等,如何在android中也做到这样呢? 记得andr ...

  7. java 垃圾回收(堆内存)、以及栈内存的释放

    一.Java的垃圾回收机制———解疑 Java的垃圾回收机制是Java虚拟机提供的能力,用于在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间. 需要注意的是:垃圾回收回收的是无任何引用的 ...

  8. HDU 3271-SNIBB(数位dp)

    题意:给一个数q, q=1时求给定区间,给定进制,各数位和等于m的数字的个数 q=2时求给定区间,给定进制,各数位和等于m的数字中的第k大的数字 分析:dp[i][sum][j],表示长度为i当前数位 ...

  9. SQLBulkCopy使用

    SQLBulkCopy,用于数据库之间大批量的数据传递.通常用于新,旧数据库之间数据的更新.即使表结构完全不同,也可以通过字段间的对应关系,顺利的将数据导过来. 首先,SQLBulkCopy需要2个连 ...

  10. JavaScript(class0526)

    什么是JavaScript? HTML只是描述网页长相的标记语言,没有计算.判断能力,如果所有计算.判断(比如判断文本框是否为空.判断两次密码是否输入一致)都放到服务器端执行的话网页的话页面会非常慢. ...