jqGrid怎么设置初始化页面时不加载数据(不向服务器请求数据)

最近做一些表格一直用到jqGrid,今天遇到一个问题:

1.就是页面加载的时候数据不显示,点击搜索才根据请求从服务器返回并显示内容.

2.默认不从服务器请求数据(不然在开发者工具下会显示请求不到数据的报错)

通常的解决方法就是直接给$("#jqGridTable").jqGrid({})套一个function,但个人感觉这并不是最好的方法。

我建议可以用:

1.初始化$("#jqGridTable").jqGrid({})的时候设置datatype: 'local'即:
 
 
 
$("#grid").jqGrid({
 
    url:"http://localhost:8080/xxxx",
 
    datatype:"local"
 
});
 
 
 
2.当要加载数据(搜索等)的时候执行serch(),把datatype设置为json或者XML并加载表格数据:
 
 
 
function serch(){
 
   $("#jqGridTable").jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid'); 
}

 

 
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

源文链接:https://blog.csdn.net/web_xyk/article/details/47978539
===========================================================================

 最近做一些表格一直用到jqGrid,今天遇到一个问题:

  1、就是页面加载的时候数据不显示,点击搜索才根据请求从服务器返回并显示内容。

  2、默认不从服务器请求数据(不然在开发者工具下会显示请求不到数据的报错)

  通常的解决方法就是直接给$("#jqGridTable").jqGrid({})套一个function,但个人感觉这并不是最好的方法。

  我建议可以用:

  (1). 初始化$("#jqGridTable").jqGrid({})的时候设置datatype: 'local',即:

$("#grid").jqGrid({
    url:"http://localhost:8080/xxxx",
    datatype:"local"

});

  (2)、当要加载数据的时候把datatype设置为json或者XML:

$("#jqGridTable").jqGrid('setGridParam',{datatype:'json'}).trigger('reloadGrid');

  实例:

if(devOnlyId!=""){
    $("#gridTable").jqGrid('setGridParam', {
        datatype:'json',
        postData: { "queryBean.devOnlyId":devOnlyId }, page: 1
    }).trigger('reloadGrid');
}else{
    $("#gridTable").jqGrid('setGridParam', {
        datatype:'json',
        postData: { "queryBean.devOnlyId":null }, page: 1
    }).trigger('reloadGrid');
}; 

  数据只给了rows的数据时,jqGrid加载本地数据:

//执行对象列表
$("#executeObject_table").jqGrid({
    dataType:"local",
    width :450,
    height : 200,
    viewrecords: true, 
    multiselect: true, 
    colModel:[
        {index:'id',name:'id',hidden:true}
        ,{index : 'typename',name : 'typename',label : '<s:text name="名称"/>',align : 'center',width : 200}
        ,{index : 'typecode',name : 'typecode',label : '<s:text name="类型"/>',align : 'center',width : 200}
    ]
});
var data = JSON.parse($("#executeObject_table_hidden").val());
for(var i=0,len=data.length;i<len;i++){
     $("#executeObject_table").jqGrid('addRowData',i+1,data[i]);
}
//"[
{"id":"d7915253b9ed41bba420de780d3cd6f0","typecode":"windowsDesktop","typename":"windows桌面终端","remarks":"windows桌面终端"},
{"id":"a4243998b03a43558d5708573f361674","typecode":"windowsCloud","typename":"windows云桌面","remarks":"windows云桌面"}
]"

 

posted @ 2019-08-28 16:23  xiaoshen666  阅读(1266)  评论(0编辑  收藏  举报