jqGrid - 分页不正常

时间:2013-11-28 13:34:21

标签: json jqgrid pagination pager

正如您在此图片中看到的那样

enter image description here

我的数据库上有13条记录,但是寻呼机说它只有1页(有10行),这是不正确的。

我的.js代码的相关部分

function cria(){
$("#grid").jqGrid({
    datatype: 'json',
    url: 'json.jsp',
    jsonReader: {repeatitems: false},
    pager: '#paginado',
    rowNum: 10,
    rowList: [10,20,30],
    emptyrecords: "Não há registros.",
    recordtext: "Registros {0} - {1} de {2}",
    pgtext: "Página {0} de {1}",
    colNames:['Código','Descrição'],
    colModel:[
        {name:'codigo', width:80, sorttype:"int", sortable: true, editable: false},
        {name:'descricao', width:120, sortable: true, editable: true, editrules:{required:true}}
    ],
    viewrecords: true,
    editurl:"dadosGrid.jsp?edit=true",
    caption: "Grupos",
    hiddengrid: true
});             

$("#grid").jqGrid('navGrid','#paginado',{},
    {edit:true,url:"Adm?aux=edit",closeAfterEdit:true,reloadAfterSubmit:true},
    {add:true,url:"Adm?aux=add",closeAfterAdd:true,reloadAfterSubmit:true},             
    {del:false},
    {search:true},
    {refresh:true});    
};

我的.jsp

代码的相关部分
String json = "[";
for (UserAux user : users ){
    json += "{";
    json += "\"codigo\":\""+user.getCod()+"\",";
    json += "\"descricao\":\""+user.getDescricao()+"\",";
    json += "},";
}
json = json.substring(0,json.length()-1);   
json += "]";                        
out.println(json);  
%>

1 个答案:

答案 0 :(得分:9)

jqGrid的默认选项意味着您实现服务器端分页。如果您想从服务器一次性返回所有数据(如果您有13条记录,这将是一个不错的选择),您只需添加loadonce: true选项。

此外,我建议您在jqGrid中添加gridview: trueautoencode: trueheight: "auto"选项。此外,您应该删除在edit:true选项中使用的del:falsesearch:truerefresh:truenavGrid,因为您在错误的地方使用了{}。如果要指定选项,则应指定第二个参数的属性(代码中为{{1}})。