free-jqgrid:hide / show column对冻结列的影响?

时间:2017-03-21 08:04:46

标签: jqgrid free-jqgrid frozen-columns

我有一个带有2个冻结列的jqgrid。如果我什么都没有,冷冻工作就好了。 隐藏/显示另一列(非冻结列)后,冻结不起作用。

我使用免费的jqGrid版本4.14.0

我不知道会发生什么。

任何人都可以帮助我!提前谢谢..

1 个答案:

答案 0 :(得分:1)

如果您直接使用低级方法showColhideColshowHideCol,那么您应该选择自己哪种方法可以提供最佳性能。

显示/隐藏列的速度相对较慢,因为需要查看网格的所有行,列标题(包括过滤器工具栏)以及相应单元格上的内联css样式是否更改( display属性应设置为none,或者应移除none值。之后,网格的高度和高度也可以改变。如果网格具有冻结列,则应在冻结潜水中执行相同操作。此外,应重新计算冻结潜水的宽度和高度,并重新计算冻结柱的每一行的高度。

因此,有两种选择:

  1. 通过调用showColhideColshowHideCol隐藏/显示您需要的所有列,然后在网格上触发jqGridResetFrozenHeights事件以强制重新计算所有宽度/冷冻潜水的高度特性
  2. 通过调用destroyFrozenColumns销毁冻结列,通过调用showColhideColshowHideCol应用隐藏/显示列,并再次通过以下方式重新创建冻结列致电setFrozenColumns
  3. 我建议您选择一些测试,上述两种方法中的哪一种可以为您的应用提供最佳性能。