mvc 5 dropdownlist多个查找值
本文关键字:查找 dropdownlist mvc | 更新日期: 2023-09-27 18:20:41
所以我有一个页面,我可以在其中输入员工详细信息,并选择一个员工表单DropdownList向其报告。我的表Employees可以有EmpGuid、EmpName、EmpParentGuid、Department、Age等字段。所以基本上EmpParentGuid是EmpGuid向其报告的主管。
以下是下拉列表的代码
控制器代码
ViewBag.EmpParentGuid = new SelectList(db.Employees.ToList(), "EmpGuid ", "EmpName", Employees.EmpParentGuid );
查看代码
@Html.DropDownList("EmpParentGuid", null, htmlAttributes: new { @class = "form-control" })
因此,基于所选的EmpParentGuid,我可以得到它的"EmpName"值。现在,我如何获得其他字段值,并可能显示在下拉列表旁边的标签中。还有我怎么能在帖子中得到同样的东西。因为我想根据所选的EmpParentGuid更新一些隐藏字段。谢谢
谢谢。
HTML页面:
@Html.ListBox("EmpParentGuid", null, htmlAttributes: new { id = "ElementID", @class = "form-control" })
添加更改事件的脚本:
$(document).ready(function () {
$("#ElementID").change(function () {
var Id = $("#ElementID").val();
$("#IdOfPartialViewHolder").load('@(Url.Action("ActionName", "Controller", null, Request.Url.Scheme))?EmpParentGuid=' + Id);
});
});
HTML部分视图:
<div id="IdOfPartialViewHolder" class="h6 ">
@Html.Partial("_YourPartialView", Model)
</div>
局部视图:
@model YourProject.Models.EmployeesViewModel
<div>
Text1:   @Html.DisplayFor(model => model.YourModelColumn1) <br />
Text2:   @Html.DisplayFor(model => model.YourModelColumn2)
... YourModelColumn5
</div>
C#代码如何更新部分视图:
public async Task<ActionResult> ActionName(string EmpParentGuid)
{
Guid IDtemp = new Guid(EmpParentGuid);
EmployeesViewModel model = new EmployeesViewModel();
Employees E = new Employees();
E = await db.Employees .FindAsync(IDtemp);
model.YourModelColumn1 = E.YourModelColumn1;
model.YourModelColumn2 = E.YourModelColumn2;
return PartialView("_YourPartialView", model);
}
也许存在更好的解决方案,但这对我有效…
如果您将提交HTML FORM
@using (Html.BeginForm(null, null, FormMethod.Post, new { enctype = "multipart/form-data" }))
{
YOUR HTML
}