我正在使用ASP MVC4应用程序制作Web应用程序。我也在使用TwitterBootstrapMVC api。我正在尝试制作一个视图,其中我在顶部有一个下拉列表以及一个文本框。下面是一张人的表。下拉列表将包含表的列标题。一旦用户选择下拉列表中的列,他们就可以在文本框中键入以缩小下表中项目列表中的结果。
例如。桌上有很多人。然后,用户在下拉列表中选择“姓氏”。然后他继续将史密斯打入文本框。当他键入每个字符时,表格的结果通过仅显示姓氏中带有“s”的人来缩小。当在文本框中键入“m”时,人员列表将缩小为仅显示姓氏为“sm”的人。
我知道如何制作表格,文本框等。我不知道如何在表格中更改结果,因为我在文本框中键入而不重新加载页面。
答案 0 :(得分:2)
您可以使用jQuery的ajax和一个动作方法,该方法返回包含搜索数据和html表格结构的局部视图。这是一个简短的样本:
public ActionResult Search(string searchTerm){
var model = db.Users.Where(u => u.LastName.contains(searchTerm));
return PartialView("_Students", model);
}
<强>脚本强>
$("#textBoxId").on("keyup change", function() {
var searchTerm = $(this).val();
$.get("/Controller/Search", { searchTerm: searchTerm }, function(data) {
$("#tableId").html(data);
});
});
您只需要在操作方法中添加另一个参数,以检查下拉列表中选择的内容。
答案 1 :(得分:0)
您要实现的是自动填充文本框。 jQuery有一个很好的。实施起来相当简单。
或者您可以试用ASP.NET AJAX Control toolkit。我自己没试过这个,所以我不确定它是多么简单/友好。