我使用分页列表显示数据表,上面有一个搜索框和提交按钮。我希望能够搜索此数据表,然后重新发布视图,并在单击提交按钮时使用新搜索的数据进行更新。我怎么在MVC中这样做?我是否必须开始查看AJAX或JQuery,还是可以使用内置的GET和POST技术来完成?
很抱歉,如果这个问题没有任何意义,我是新来的MVC:D
答案 0 :(得分:0)
无论是否是AJAX,基本模式都是一样的。您的视图,GET和POST将有2个操作,您的搜索表单应该是一个简单的ViewModel,其中包含您要搜索/排序的字段,其中还包括您的分页。
[HttpGet]
public ActionResult DataTable(int? page){
var data = myRepository.GetData(page);
return View(data);
}
[HttpPost]
public ActionResult DataTable(int? page, SearchModel search){
var data = myRepository.GetSearchedData(page, search);
return View(data);
}
如果您是通过AJAX进行的,区别在于您在PartialView中显示数据,您的DataTable View会在命名div中呈现此部分,HttpPost方法将返回PartialView并且您将替换使用此结果命名div的内容(JQuery的$.load()
方法将是最简单的方法)。