我有一个表格,里面有我想要排序和过滤的数据。
我实现了一个自动刷新功能,每次都从服务器加载数据,但我想恢复排序和过滤选项,我可以这样做。
我使用trigger("reloadGrid",[{current:true}])
,将数据类型设置为 json ,以便在函数中从服务器检索数据,并在带有 aautorefresh
的方法中使用排序和过滤选项,如其他 stackoverflow 问题中所述。loadcomplete
setTimeout
这行得通,但是每次刷新网格时,我都会在一秒钟内看到带有完整数据的网格,没有排序也没有过滤,然后数据在本地排序/过滤。
鉴于我想要 5 秒的自动刷新,有没有办法可以阻止该方法在reloadGrid
有服务器请求但等待刷新显示时显示完整数据?reload
loadComplete
函数中使用的重载autorefresh
:
$("#MyGrid").jqGrid("setGridParam",{url:"list.php", datatype:"json"}).trigger("reloadGrid",[{current:true}]);
模型 :
jQuery("#MyGrid").jqGrid({
url:'list.php',
datatype: "json",
loadonce:true,
...
loadComplete: function(){
if ($("#MyGrid").jqGrid("getGridParam", "datatype") !== "local") {
setTimeout(function () {
$("#MyGrid").jqGrid("setGridParam",{search:srch,postData:post});
})
};
}