我刚刚读到jqGrid中的mtype选项将决定我们如何进行ajax调用。 GET将检索数据,POST将发送数据。
当我加载我的jqGrid时,我想在我的js文件中将一个额外的参数传递给我的控制器:
url: 'Controller/Action1',
mtype: 'POST',
datatype: 'json',
postData: { ParentId: selectedParentId },
在我的控制器中我有这个:
public JsonResult Action1(ParentId)
{
// Retrieve child properties from db using ParentId
// Return json result
}
this.Request.Param["sidx"]
这样的内容吗?答案 0 :(得分:1)
在你的控制器中,你将获取jqGrid传递给你的所有参数:
public ActionResult GetGridData(string sidx, string sord, int page, int rows, bool _search, string filters, string ParentId)
{
....
int totalRecords = wholeList.Count();
var pagedQuery = wholeList.OrderBy(sidx + " " + sord).Skip((page - 1) * rows).Take(rows).ToList();
var jsonData = new
{
total = (totalRecords + rows - 1) / rows,
page = page,
records = totalRecords,
rows = (
from tempItem in pagedQuery
select new
{
cell = new string[] {
tempItem.ToString(),
...
}
}).ToArray()
return Json(jsonData, JsonRequestBehavior.AllowGet);
}
您可以使用额外参数来更改反馈到jqGrid的内容,并且您还将看到您正在传入并使用参数来处理分页。
答案 1 :(得分:1)
mtype选项定义HTTP请求的类型:
当然,您可以将jqGrid的其他选项作为排序顺序等参数
抱歉我的英文不好