1

我正在使用 jqgrid,我正在触发reloadGrid一些事件。

我只想处理该reloadGrid事件,以便我能够userData从重新加载的事件中获取。为此,您可能会建议我使用loadComplete,但loadComplete在第一次加载网格时被称为事件。但我只想听reloadGrid事件。

我尝试了以下但无法实现我想要的。

if($('#table').trigger('reloadGrid').length>0)
{
var userData = $('#table').jqgrid('getGridParam', 'userData');
//here the userData is old data not the reloaded one.
}

任何人都可以建议我解决任何问题。

4

2 回答 2

1

为什么不这样做:

// to trigger the event
$('#table').trigger('reloadGrid');  

// to listen to the event
$('#table').on('reloadGrid', function() {
   var userData = $('#table').jqgrid('getGridParam', 'userData');
   //here the userData is old data not the reloaded one.
})

您使用触发事件并使用... docs for here.trigger()收听事件.on().on()

于 2012-06-11T10:11:07.797 回答
0

我已经解决了这个问题。

有一个全局变量为

var loadedonce = false;

loadComplete监听器中完成了以下操作。

loadComplete: function(data){
if(!loadedonce){
//some manupulations
loadedonce = true;
}
else{
var userData = $('#table').jqgrid('getGridParam', 'userData');
//this userData has the latest data i needed
}
}

如果有人有更好的解决方法,请分享...

于 2012-06-11T10:17:41.373 回答