JqG​​rid中的服务器端分页(无网格分页器参数)

时间:2015-04-24 15:44:44

标签: jquery asp.net-mvc jqgrid pagination

我有一个需要服务器端分页的jqGrid,我必须传递一些搜索条件和请求(POST),On Initial调用我能够获取结果,但我无法找到发送方式服务器端分页所需的网格当前页面,索引和大小为mentioned here

我使用小提琴和网络标签来检查我的请求是否正在生成上述帖子中提到的其他内容,但找不到任何

以下是我的代码

的jqGrid

        $("#list").jqGrid({
        serializeGridData: function () {
            return {'data': JSON.stringify($('#searchInfo').serializeObject()) };
        },
        url: '/SearchUsers/SearchResult',
        mtype: 'POST',
        datatype: "json",
        jsonReader: {
            page: "currentPage",
            total: "totalPages",
            records: "total",
            root: "rows",
            cell: "",
            id: "0"
        },
        contentType: 'application/json; charset=utf-8',
        rowNum: 10,
        pager: '#pager',
        sortname: 'FirstName',
        sortorder: "asc",
        autowidth: true,
        height: 'auto',
        shrinkToFit: false,
        forceFit: true,
        ignoreCase: true,
        sortable: false,
        colModel: [
            { label: 'ID', name: 'ID', align: "center", key: true, hidden: true, frozen: true },
            { label: 'First Name', name: 'FirstName', align: "left", sopt: ['cn'], frozen: true},
            { label: 'Last Name', name: 'LastName', align: "left", sopt: ['cn']},
            { label: 'Email Address', name: 'EmailAddress', align: "left", sopt: ['cn'] }
        ],
        viewrecords: true, // show the current page, data range and total records on the toolbar
        emptyrecords: "No records to view.",
        rowattr: Searchusers.RowFormatter,
    }).css("font-family", "Arial Narrow");
    $('#list').jqGrid('filterToolbar', { defaultSearch: 'cn' });
    $("#list").trigger("reloadGrid");
    $("#list").jqGrid('setFrozenColumns');
    $(".ui-jqgrid-titlebar-close").remove();

我的Json数据

{
   “总页数”: “4”,    “当前页”: “1”,    “总”: “35”,    “行”:[
      {
         “ID”: “1”,          “名字”:“一”,          “名字”:“一”,          “EmailAddress的”: “ab@cd-sg.com”       },       {
         “ID”: “2”,          “名字”: “S”,          “名字”: “K”,          “EmailAddress的”: “sk@co.com”       },       {
         “ID”: “3”,          “名字”: “K”,          “名字”: “G”,          “EmailAddress的”: “abc@abc-sg.com”       },       {
         “ID”: “4”,          “名字”:“作”,          “名字”:“ASD”          “EmailAddress的”: “asd@l.co”       },       {
         “ID”: “5”,          “名字”: “K”,          “名字”: “B”,          “EmailAddress的”: “KB@FB.com”       } 。 。 。 另外30条记录    ] }

任何帮助?

1 个答案:

答案 0 :(得分:2)

我自己不使用serializeObject插件,但我想它会返回具有您要发送到服务器的属性的对象。因此,您可以尝试将您使用的serializeGridData代码替换为以下

serializeGridData: function (postdata) {
    return {data: JSON.stringify($.extend({},
        $("#searchInfo").serializeObject(), postdata))};
}

它应该将postdata的jqGrid的标准属性与serializeObject插件返回的对象结合起来。