下面是一个使用JsonResult来返回动态下拉列表数据的示例。 首先,创建一个模型类,比如Employee,其中包含需要的属性,以及与其他模型类的关系(如果有)。
public class Employee { public int EmployeeId { get; set; } public string Name { get; set; } public int DepartmentId { get; set; } public Department Department { get; set; } }
然后,创建一个方法在控制器中来获取下拉列表数据,以便在视图中使用。
public JsonResult GetDepartmentList() { var departments = db.Departments.ToList(); var departmentList = departments.Select(d => new SelectListItem { Value = d.DepartmentId.ToString(), Text = d.Name }).ToList(); return Json(departmentList, JsonRequestBehavior.AllowGet); }
在视图中,使用Ajax来异步获取下拉列表数据,在下拉列表中使用JavaScript来绑定数据。
@{ ViewBag.Title = "Create"; }
@using (Html.BeginForm()) { @Html.AntiForgeryToken()
Employee
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.Name, htmlAttributes: new { @class = "control-label col-md-2" })
@Html.EditorFor(model => model.Name, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Name, "", new { @class = "text-danger" })
@Html.LabelFor(model => model.DepartmentId, htmlAttributes: new { @class = "control-label col-md-2" })
相关内容