jqgrid分页不起作用

时间:2012-04-18 15:57:03

标签: jquery jqgrid

我有一个js文件并将参数传递给webmethod,它以json格式返回输出。仅显示第一页。有大约100条记录,只显示20条记录。我需要在后续页面中显示其他记录。我尝试添加 表格之后的div标签

<div id="pager12" class="scroll" style="text-align:center;></div>

然后在jqgrid function $('#SearchForComp).jqGrid()中,我添加了这一行 pager: jQuery('#pager12')。是足以在页面中显示输出还是应该添加任何内容?它不起作用。

由于

jquery看起来像这样

$("#SearchForComp").jqGrid({
    scroll: true,
    treeGrid: true,
    altRows: true,
    treeGridModel: 'adjacency',
    ExpandColumn: 'DISPLAY_NAME',
    datatype: function (postdata) {
        postdata.deptSeqNo = null;
        postdata.searchString = $("#SearchForComp").val().trim();

        $.ajax({
            type: "POST",
            url: 'Department.aspx/compsearch',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            data: JSON.stringify(postdata),
            complete: completeUserSearch
        });
    },
    mtype: "POST",

    colModel: [{ name: 'KEY_FIELD', index: 'KEY_FIELD', width: 1, hidden: true, key: true },
               { label: 'Department/Name', name: 'DISPLAY_NAME', index: 'DISPLAY_NAME', width: 200, resizable: false, sortable: false },
               { label: 'Telephone', name: 'DISPLAY_PHONE', index: 'DISPLAY_PHONE', width: 150, align: 'center', resizable: false, sortable: false },
               { label: 'Email', name: 'DISPLAY_EMAIL', index: 'DISPLAY_EMAIL', width: 225, align: 'center', resizable: false, sortable: false, formatter: 'email'}],
    treeIcons: { plus: 'ui-icon-plus', minus: 'ui-icon-minus', leaf: 'ui-icon-radio-off' },
    height: 'auto',
    caption: "User Search",
    treeReader: {
        level_field: "TREE_LEVEL",
        parent_id_field: "PARENT_ID",
        leaf_field: "IS_LEAF",
        expanded_field: "EXPANDED"
    },
    jsonReader: {
        root: "Data",
        page: "CurrentPage",
        total: "TotalPages",
        records: "TotalRecords",
        repeatitems: false,
        id: "0",
        userdata: "UserData"

    },

    beforeSelectRow: function (id, e) { return false; },
 });

我调用webmethod“compsearch”,以json格式返回数据,然后将其显示给用户。

1 个答案:

答案 0 :(得分:3)

可能您没有定义rowNum选项,因此将使用默认值20。通常,如果您更正实现服务器端数据分页,则不会出现问题。如果您不希望在服务器端实现数据的实现分页和过滤,则可以向jqGrid添加loadonce: true选项。如果datatype选项将自动更改为'local' ,则无需与服务器进行额外通信即可完成分页。除此之外,loadonce: true允许您通过使用toolbar filterAdvanced Searching在一行中实现对数据的过滤。