【发布时间】:2012-01-24 10:34:12
【问题描述】:
我在我的解决方案中使用 JQGrid,我在其中动态加载选项卡,但如果我在隐藏选项卡上有一个网格,则 JQGrid 似乎无法正确加载,您必须等待它完全加载才能隐藏它。
是否有任何方法可以继续加载网格,即使它没有显示在页面上?
【问题讨论】:
我在我的解决方案中使用 JQGrid,我在其中动态加载选项卡,但如果我在隐藏选项卡上有一个网格,则 JQGrid 似乎无法正确加载,您必须等待它完全加载才能隐藏它。
是否有任何方法可以继续加载网格,即使它没有显示在页面上?
【问题讨论】:
您应该在初始化时使用datatype: 'local' 用于所有未激活的选项卡网格。它将阻止加载网格。您应该将 datatype 更改为 'local' (关于 $('#gridId').jqGrid('setGridParam', {datatype: 'json'}))并在 select 回调中调用 .trigger('reloadGrid') jQuery UI 选项卡或'tabsselect' 事件处理程序内部。
您可以通过在重置datatype 和重新加载之前查询当前的datetype 来优化已经具有datetype: 'json'(或“xml”)的网格的重新加载。为此,您应该只获得与$('#gridId').jqGrid('getGridParam', 'datatype') 相关的当前datetype。
【讨论】: