首先先構建綁定下拉框的數據源
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