子网格缓存或阻止子网格数据被删除 (jqGrid)

2024-01-19

有没有办法强制 jqGrid 在切换行时不删除子网格数据?我当前加载数据网格的过程如下:

1)设置主网格,使用稍后可以使用的 ID 以编程方式设置子网格

2)通过json将数据本地加载到主网格中

3)通过json将数据添加到本地子网格

由于当用户切换(隐藏然后重新显示)时我在本地加载子网格而不是通过 URL 加载,网格中没有任何数据,我希望它显示提供给子网格的原始数据。

我知道这可能看起来是一种奇怪的加载数据的方式,但这是有原因的

我目前使用 jqGrid 所做的事情是在一个网页上显示大量的保险信息(本质上它是一份报告)。该网页应该自动加载所有数据,并且我有很多需要提供子网格功能的实例。我已经弄清楚如何通过手动强制发生单击事件以便显示子网格来做到这一点,但同样,如果用户单击子网格,那么它就会消失并且不会回来。

如果您对此有任何建议,请告诉我。

另外,如果您认为有更好的方法来自动显示所有数据,请也告诉我。到目前为止,我发现 jqGrid 很容易使用,但我一直强迫它做它本身不做的事情,比如在页脚行中添加总计值。

预先感谢您的帮助。


您想要做的是防止 jqGrid 在展开行时重新加载子网格数据。其控制旋钮位于 jqGrid 的 subGridOptions 属性中。 subGridOptions 对象有一个名为 reloadOnExpand 的布尔属性,它控制着这一具体行为。

当你初始化 jqGrid 对象时,只需确保将此属性设置为 false,如下所示:

jQuery("#gridId").jqGrid({
    // ... other properties ...
    subGrid: true,
    subGridOptions: {
        reloadOnExpand: false // Prevent jqGrid from wiping out the subgrid data.
    },
    subGridRowExpanded: subGridExpandCallback,
    // ... other properties ...

我能找到这段代码的唯一地方是在他们的演示网站的页面上执行“查看源代码”,提到了这种行为。本文发布时的演示页面在这里:http://www.trirand.com/blog/phpjqgrid/examples/hierarchy/subgrid_loadonce/default.php http://www.trirand.com/blog/phpjqgrid/examples/hierarchy/subgrid_loadonce/default.php

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

子网格缓存或阻止子网格数据被删除 (jqGrid) 的相关文章

随机推荐