从Cookie加载网格后,dhtmlx网格无法正常工作,然后隐藏/显示列

时间:2019-06-22 17:06:52

标签: javascript dhtmlx

我们正在使用dhtmlxgrid库,我需要在网格上具有保存和重新加载功能。所以我目前正在做的是在保存时将网格保存到cookie,然后在重新加载时从cookie加载网格,如grid.load始终以默认配置加载。我将保存的cookie加载到XLE事件监听器中的网格中。

如果我只保留隐藏/显示列,列顺序和排序,那么一切都很好,但是如果我保留列大小也可以重新加载,但是如果我检查/取消选中列以稍后显示/隐藏它们,则网格将无法正常工作正确地

dhtmlxgrid是如何工作的?还是我做错了事?关于如何保持和重新加载列大小的任何想法?

grid.saveHiddenColumnsToCookie(name,param)   
grid.saveOrderToCookie(name, param) 
grid.saveSortingToCookie(name,param)    
//grid.saveSizeToCookie(name,param)


grid.loadHiddenColumnsFromCookie(name)   
grid.loadOrderFromCookie(name)   
//grid.loadSizeFromCookie(name) 
grid.loadSortingFromCookie(name)

如果我也启用了保存和重新加载大小功能,则网格将无法正常工作,实际上重新加载是正常的,但是当我选中/取消选中显示/隐藏列的列时,网格将无法正常工作并损坏。

1 个答案:

答案 0 :(得分:0)

请尝试使用以下格式和顺序:

grid.saveHiddenColumnsToCookie(name,param)   
grid.saveSortingToCookie(name,param)    
grid.saveSizeToCookie(name,param)
grid.saveOrderToCookie(name, param) 

grid.loadOrderFromCookie(name)   
grid.loadHiddenColumnsFromCookie(name)   
grid.loadSizeFromCookie(name) 
grid.loadSortingFromCookie(name)

或以下用于自动保存加载的解决方案:

mygrid.loadOrderFromCookie(name);   
mygrid.loadSizeFromCookie(name);
mygrid.loadHiddenColumnsFromCookie(name);
mygrid.loadSortingFromCookie(name)    

mygrid.enableAutoSizeSaving(name,param);
mygrid.enableAutoHiddenColumnsSaving(name,param);
mygrid.enableSortingSaving(name,param);
mygrid.enableOrderSaving(name,param); 

mygrid.attachEvent("onAfterCMove", function(cInd,posInd){
    mygrid.saveSizeToCookie(name,param);
    mygrid.saveHiddenColumnsToCookie(name,param);
});