MVC5 下拉框绑定(单选)

1.Model

[Display(Name = "学历")]
 public ICollection<System.Web.Mvc.SelectListItem> asdflist{ get; set; }    //下拉框的类型

[Display(Name = "学历")]
[Required]
public int asdf { get; set; }       //学历这个字段的属性

 

2.controller

(1)先写一个程式绑定,可以通过数据库绑定或者直接绑定

[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)初始化,并传给视图

[Description("我的学历")]
[UIExceptionResult]
 public ActionResult Edu()
{
       var edu= new EduModel();
       edu.asdflist=bind_Education();    //初始化下拉框的值
       return View(edu);
 }

 

3.视图

@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();

 

转载于:https://www.cnblogs.com/Sakura007/p/7084326.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值