首先先构建绑定下拉框的数据源
?private void GetSalesList() ???????{ ???????????var userList = _rmaExpressAppService.GetUserList(); ???????????TempData["RMASalesList"] = new SelectList(userList, "Id", "UserName");//选择 userList中的Id作为 Value,选择·UserName 作为Text显示 ???????}
然后构建前台,推荐用Html.DropDownListFor , model.Model.SaleExecutor 既可以在选择的时候将对应的Value传回去,也可以在初始化的时候给字段赋默认值
??????????@Html.DropDownListFor(model => model.Model.SaleExecutor, TempData["RMASalesList"] as SelectList, new { @class = "form-control" })
注意初始化的时候要先赋值给前台
??/// <summary> ???????/// 新增快递单-初始空页面 ???????/// </summary> ???????[HttpGet] ???????[AccessGroup(GroupKey = "RMAExpress_Add")] ???????public ActionResult Add(RMAExpressDetailInfo model) ???????{ ???????????GetSalesList();//为前台下拉框绑定值做准备 ???????????model.Model.SaleExecutor = userId;//传默认值给前台 ???????????return View(model); ???????}
在提交的时候,会自动把值映射到对应的模型中,当然特殊需要的时候可以通过Jquery单独获取选中值
?var saleUserId = $("#Model_SaleExecutor").find("option:selected").val();//找到下拉框的选中的Value
@Html.DropDownListFor 下拉框绑定(选择默认值)
原文地址:https://www.cnblogs.com/wang-min/p/10338609.html