如何从jqgrid中的服务器加载所有记录

时间:2012-11-14 17:44:51

标签: jquery jqgrid

我有一个从服务器获取数据的网格。我不需要在这个网格上分页 所有记录一次加载。我尝试使用loadonce属性,但它不起作用。 我怎样才能做到这一点?

这是我的网格

jQuery("#rowed4").jqGrid({
    url:'server.php?q=2',
    datatype: "json",
    colNames: ['Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'], 
    colModel: [
        {name:'id',index:'id', width:55}, 
        {name:'invdate',index:'invdate', width:90, editable:true}, 
        {name:'name',index:'name', width:100,editable:true}, 
        {name:'amount',index:'amount', width:80, align:"right",editable:true}, 
        {name:'tax',index:'tax', width:80, align:"right",editable:true}, 
        {name:'total',index:'total', width:80,align:"right",editable:true}, 
        {name:'note',index:'note', width:150, sortable:false,editable:true}
    ], 
    rowNum: 10,
    rowList: [10, 20, 30],
    pager: '#prowed4',
    sortname: 'id',
    viewrecords: true, 
    sortorder: "desc",
    editurl: "server.php",
    caption: "Full control"
});

1 个答案:

答案 0 :(得分:4)

如果您不使用loadonce: true,则服务器应仅返回第一页数据。在您的情况下,您使用rowNum: 10。所以服务器应该返回最多10条记录。所以服务器应该根据jqGrid发送到服务器的pagerows参数返回结果子集

如果您使用loadonce: true,服务器应返回所有记录。服务器应忽略 page和jqGrid发送的rows参数。 jqGrid将保存内部参数data_index中的所有数据,并将在本地实现分页,排序和过滤/搜索(无需向服务器发送任何其他请求)。

其余部分应自动生效。