【发布时间】:2016-05-26 05:58:57
【问题描述】:
选择员工 ID 后如何显示我的详细信息(全名和部门)。我正在使用 MVC5 和 Razor
我创建了一个简单的 jquery,它在触发或更改员工 ID 时触发
$(".employeeID").on("click", function () {
var empid = $(this).val();
if (empid != undefined)
{
//I don't know what to write here
//but I break point here and it triggered
}
});
这里还有文本框员工 ID 的代码
@Html.TextBoxFor(model => model.EmployeeID, new { @class = "form-control employeeID", @placeholder = "Employee's ID", @id = "employeeid", @required = true })
全名和部门
@Html.DisplayFor(model => model.FullName)
@Html.DisplayFor(model => model.Department)
然后在选择员工 id 后,它将在数据库中查找员工及其部门的全名。
我仍然是 MVC 和脚本的业余爱好者 谁能帮我解决这个问题?
提前致谢
更新
$('#employeeid').autocomplete(
{
source: '@Url.Action("EmployeeIDSearch", "Home")'
}).focus(function () {
$(this).autocomplete("search", " ")
});
这是我的自动完成的 jquery。以下是我的员工 ID 的控制器
public ActionResult EmployeeIDSearch(string term)
{
// Get Tags from database
using (var ctx = new DASH_FAEntities())
{
var tags = (from e in ctx.Employees
select e.EMT_EmployeeID.Trim()).ToList();
return Json(tags.Where(t => t.ToLower().Contains(term.ToLower().Trim())).OrderBy(x => x),
JsonRequestBehavior.AllowGet);
}
}
我的员工表包含
- 员工编号
- 全名
- 部门
【问题讨论】:
-
您应该处理
select事件(假设您使用jquery-ui)。@Html.DisplayFor()只是将文本添加到您的视图中(不是 html 元素),而使用new { @class = "form-control"}毫无意义——它什么也不做)。您将需要创建可以选择的元素 - 例如<div id="fullname">@Html.DisplayFor(model => model.FullName)</div>以便他们可以更新。 -
是的,我正在使用 jquery-ui。我应该在哪一部分使用
select?注意到我的显示器使用<div></div>。 -
向您展示如何附加插件的脚本,以及获取您想要包含在视图中的详细信息的控制器方法。
标签: c# jquery json razor asp.net-mvc-5