我正在刷新jqgrid使用setInterval(在jqGrid-LoadComplete事件中)。如果我选择网格中的任何行,我该如何停止刷新jqgrid。因为它取消了我选中的行。
var timer; //Global Variable
function populateGrid() { /*Grid population Code URL:url, <ColNames> <colModel> **********/
loadComplete: function () {
var myGrid = $("#<grid_name>");
$("#cb_" + myGrid[0].id).hide();
var resCount = $("#<grid_name>").jqGrid('getGridParam', 'reccount');
timer = setInterval(function () {
$("#<grid_name>").trigger("reloadGrid");
}, 4000);
},
onSelectRow: function (rowid, status, e) {
clearTimeout(timer);
}
}
答案 0 :(得分:0)
为计时器
声明一个全局变量var timer;
在jqGrid加载事件中,使用刷新代码
调用该函数timer = setInterval(fn, intTimeoutInMilliseconds);
在选择行事件的代码中
onSelectRow: function(id){
clearTimeout(timer);
}
答案 1 :(得分:0)
根据我的理解,如果选择一行,您希望停止刷新。您可以通过检查setInterval中是否选择了行来执行此操作。 “grid.jqGrid('getGridParam','selrow')=== null”
代码:
var timer; //Global Variable
function populateGrid() { /*Grid population Code URL:url, <ColNames> <colModel> **********/
loadComplete: function () {
var myGrid = $("#<grid_name>");
$("#cb_" + myGrid[0].id).hide();
var resCount = $("#<grid_name>").jqGrid('getGridParam', 'reccount');
timer = setInterval(function () {
if($("#<grid_name>").jqGrid ('getGridParam', 'selrow')===null){
$("#<grid_name>").trigger("reloadGrid");
}
}, 4000);
},
onSelectRow: function (rowid, status, e) {
clearTimeout(timer);
}
}