jquery – jqgrid重新加载网格部分工作

我有一个客户端管理的jqgrid,当我触发一些外部事件时我会重新加载.
当我用更多数据重新加载网格时,一切都很好但是当我用较少的数据重新加载它时,行数是不正确的.

例如,当网格中当前有100行并且我用200重新加载它时,导航栏会显示200条记录.如果其中有200行并且我用25行刷新它,它仍然在导航栏中显示200而不是25.刷新网格的代码如下所示:

$("#list2").trigger("GridUnload");             
 $.ajax({
   url: 'http://xxx,dataType: 'json',async: false,success: function(data) {
              gridData = data;
          }

});

$("#list2").setGridParam({ data: gridData });
    $("#list2").trigger("reloadGrid");

我不认为问题出在导航栏上,因为我可以清楚地点击下一页并查看添加行.

谢谢

解决方法

尝试更换
$("#list2")[0].refreshIndex();
$("#list2").trigger("reloadGrid");

var g = $("#list2");
g.setGridParam({ data: gridData });
g[0].refreshIndex();
g.trigger("reloadGrid");

有关详细信息,请参阅http://www.trirand.com/blog/?page_id=393/help/losing-edited-cell-data-after-paging/http://www.trirand.com/blog/?page_id=393/bugs/data-parameter-are-not-modified-during-inline-editing/.

一般来说,你应该使用setGridParam方法可能更好的set url参数,或者只使用带函数的postData(详见How to filter the jqGrid data NOT using the built in search/filter box)

相关文章

1.第一步 设置响应头 header('Access-Control-Allow...
$.inArray()方法介绍 $.inArray()函数用于在数组中搜索指定的...
jquery.serializejson.min.js的妙用 关于这个jquery.seriali...
JS 将form表单数据快速转化为object对象(json对象) jaymou...
jQuery插件之jquery.spinner数字智能增减插件 参考地址:http...