Events jqGrid与';加载完成';:vs loadComplete:function()

Events jqGrid与';加载完成';:vs loadComplete:function(),events,jqgrid,Events,Jqgrid,我有一个在load complete事件中运行的函数,但是,这取决于我在网格中使用的loadComplete,一种工作方式和一种不工作方式 例如,我想在加载完成后修改表上特定div的颜色。所以我有 $(grid).jqGrid( {...options... loadComplete: function() { changeColor(); } ...remaining grid options/events )}; 我可以看到changeColor工

我有一个在load complete事件中运行的函数,但是,这取决于我在网格中使用的loadComplete,一种工作方式和一种不工作方式

例如,我想在加载完成后修改表上特定div的颜色。所以我有

$(grid).jqGrid(
{...options...

    loadComplete: function()
    {
        changeColor();
    }
...remaining grid options/events
)};
我可以看到changeColor工作中的代码,但当网格完成时,着色恢复到代码之前

但是如果我有这个

$(grid).jqGrid(
{...options...

    'loadComplete': changeColor,

...remaining grid options/events
)};
代码更改颜色并保持不变。我还尝试了gridComplete:function(),得到了与使用loadComplete:function()相同的结果

根据我所看到的,在我看来,网格在loadComplete:function()之后继续加载,而不是在“loadComplete”之后加载

我还意外地发现,如果网格同时包含loadComplete:function()和“loadComplete”,则会触发“loadComplete”

我可以解决上述问题(我不喜欢),但如果有人知道为什么会发生这种情况,我将非常感谢你的回答

使用jqGrid 5.0.2


谢谢。

如果
更改颜色
最后不要做你期望的事情,而应该发布函数的代码。
loadComplete:changeColor
loadComplete:function(){changeColor();}
之间的主要区别在于,您不会将
此值和参数转发到
changeColor
。代码
loadComplete:function(){changeColor.apply(这个,参数);}
应该可以做到这一点。@Oleg我很感谢您提供的信息。现在,我将使用“loadComplete”,它可以工作。由于时间限制,我没有时间进一步研究。