本文实例为大家分享了MVC5下拉框单选绑定的具体代码,供大家参考,具体内容如下
1.Model
1
2
3
4
5
6
|
[Display(Name = "学历" )]
public ICollection<System.Web.Mvc.SelectListItem> asdflist{ get ; set ; } //下拉框的类型
[Display(Name = "学历" )]
[Required]
public int asdf { get ; set ; } //学历这个字段的属性
|
2.controller
(1)先写一个程式绑定,可以通过数据库绑定或者直接绑定
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
[Description( "学历" )]
[LoginAllowView]
private List<SelectListItem> bind_Education()
{
StringBuilder sb = new StringBuilder();
sb.Append( " select id,name " );
sb.Append( " from Edu_file " );
DataTable dt = sqlHelp.getData(sb.ToString()); //sqlHelp是已经写好的帮助类,便于数据库的操作
var factorOptions = dt.AsEnumerable().Select(row => new SelectListItem
{
Text = row[ "name" ],
Value = row[ "id" ]
}).ToList();
return factorOptions;
}
[Description( "学历" )]
[LoginAllowView]
private List<SelectListItem> bind_Education()
{
List<SelectListItem> listItem = new List<SelectListItem>();
listItem.Add( new SelectListItem { Text = "本科" , Value = "1" });
listItem.Add( new SelectListItem { Text = "硕士" , Value = "2" });
listItem.Add( new SelectListItem { Text = "博士" , Value = "3" });
return listItem;
}
|
(2)初始化,并传给视图
1
2
3
4
5
6
7
8
|
[Description( "我的学历" )]
[UIExceptionResult]
public ActionResult Edu()
{
var edu= new EduModel();
edu.asdflist=bind_Education(); //初始化下拉框的值
return View(edu);
}
|
3.视图
1
2
3
4
5
6
7
8
|
@model RsJob.Web.Models.EduModel
< div class = "form-group" >
@Html.LabelFor(m => m.agj03, new { @class = "col-sm-2 control-label" })
< div class = "col-sm-10" >
@Html.DropDownListFor(model => model.asdf, Model.asdflist, new { @class = "form-control select2", style = "width: 100%;" })
@Html.ValidationMessageFor(m => m.asdf, "", new { @class = "text-danger" })
</ div >
</ div >
|
select2是bootstrap的样式,js添加:$('.select2').select2();
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。