ASP MVC 4将列表中的项目更改为用户类型

时间:2014-02-13 00:47:50

标签: c# asp.net asp.net-mvc asp.net-mvc-4 twitter-bootstrap-3

我正在使用ASP MVC4应用程序制作Web应用程序。我也在使用TwitterBootstrapMVC api。我正在尝试制作一个视图,其中我在顶部有一个下拉列表以及一个文本框。下面是一张人的表。下拉列表将包含表的列标题。一旦用户选择下拉列表中的列,他们就可以在文本框中键入以缩小下表中项目列表中的结果。

例如。桌上有很多人。然后,用户在下拉列表中选择“姓氏”。然后他继续将史密斯打入文本框。当他键入每个字符时,表格的结果通过仅显示姓氏中带有“s”的人来缩小。当在文本框中键入“m”时,人员列表将缩小为仅显示姓氏为“sm”的人。

我知道如何制作表格,文本框等。我不知道如何在表格中更改结果,因为我在文本框中键入而不重新加载页面。

2 个答案:

答案 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);
    });
});

您只需要在操作方法中添加另一个参数,以检查下拉列表中选择的内容。

请阅读以下内容:https://api.jquery.com/jQuery.get/

答案 1 :(得分:0)

您要实现的是自动填充文本框。 jQuery有一个很好的。实施起来相当简单。

或者您可以试用ASP.NET AJAX Control toolkit。我自己没试过这个,所以我不确定它是多么简单/友好。