Jquery 首次加载网格时在jqgrid中的列选择器中隐藏某些列

Jquery 首次加载网格时在jqgrid中的列选择器中隐藏某些列,jquery,Jquery,只有在第一次加载网格时,我才尝试将某些列隐藏到选择器插件的隐藏部分 现在,当用户从隐藏部分到显示列部分选择某些列时,如果再次重新加载,则在重新加载之前选择在网格中显示的列必须保持不变 它们是实现这一情景的一种方式吗? 任何帮助都将不胜感激 谢谢:)这将需要一些设置工作。基本思想是在chosser插件的pager OnClick按钮上附加一个函数,将此数据保存在本地或数据库中,然后在加载网格之前使用.jqGrid('showCol')方法。应该注意的是,这不是为多语言安装而设计的 首先,假设您的网

只有在第一次加载网格时,我才尝试将某些列隐藏到选择器插件的隐藏部分

现在,当用户从隐藏部分显示列部分选择某些列时,如果再次重新加载,则在重新加载之前选择在网格中显示的列必须保持不变

它们是实现这一情景的一种方式吗? 任何帮助都将不胜感激


谢谢:)

这将需要一些设置工作。基本思想是在chosser插件的pager OnClick按钮上附加一个函数,将此数据保存在本地或数据库中,然后在加载网格之前使用.jqGrid('showCol')方法。应该注意的是,这不是为多语言安装而设计的

首先,假设您的网格ID为,网格ID为,页面ID为页面ID为(您可以选择所需的ui图标,但我认为垂直点看起来有点像一列)

接下来,您需要在第一次加载网格时获取变量。调用.jqGrid初始化方法后,使用以下代码显示

//explodes the stored strings into proper arrays for jqGrid
var aryShow = localStorage.getItem('chooser-show').split(',');
var aryHide = localStorage.getItem('chooser-hide').split(',');
//uses the hideCol and showCol methods to load the previously stored properties
$('#grid').jqGrid('hideCol',aryHide).jqGrid('showCol',aryShow);

**注意:如果更改colModel中任何列的名称,或者添加/删除列,都会出现错误。如果您打算修改colModel,请确保在初始化过程中添加代码,以检查选择器show和选择器hide localStorage变量是否不完整,并将其删除。

您有权访问数据库以向其写入信息,还是只有读取权限?
//explodes the stored strings into proper arrays for jqGrid
var aryShow = localStorage.getItem('chooser-show').split(',');
var aryHide = localStorage.getItem('chooser-hide').split(',');
//uses the hideCol and showCol methods to load the previously stored properties
$('#grid').jqGrid('hideCol',aryHide).jqGrid('showCol',aryShow);