功能: 用户点击grid的表头菜单显示/隐藏列,拉动列、重新刷新页面后保留。

  1. var grid = new Ext.grid.GridPanel({   
  2.     width: 400,   
  3.     height: 200,   
  4.     autoScroll: true,   
  5.     trackMouseOver:false,   
  6.     ddGroup:'myDDGroup',   
  7.     sm:new Ext.grid.CellSelectionModel({}),   
  8.     cm: new Ext.grid.ColumnModel({   
  9.       columns:[   
  10.           {header: '序号', dataIndex: 'id', sortable: true },   
  11.           {header: '名字', dataIndex: 'name', sortable: true},   
  12.           {header: '描述', dataIndex: 'descript', sortable: true}   
  13.         ]   
  14.     }),   
  15.     viewConfig:{   
  16.       forceFit:true  
  17.     },   
  18.     renderTo:Ext.getBody(),   
  19.     store:new Ext.data.SimpleStore({   
  20.       fields:['id','name','descript'],   
  21.       data:[   
  22.         [1,'name001','this is name001'],   
  23.         [2,'name002','this is name002'],   
  24.         [3,'name003','this is name003'],   
  25.         [4,'name004','this is name004']   
  26.       ]   
  27.     }),   
  28.        
  29.     stateful:true,   //开启状态
  30.     stateId:'cookiegrid' //cookie
  31. });  

stateId : String
The unique id for this component to use for state management purposes (defaults to the component id if one was set, otherwise null if the component is using a generated id).
See stateful for an explanation of saving and restoring Component state.
Ext自带的这个stateful,这个保持状态能保持多久?用户注销后重新登录就失效了,能否设置这个cookie的时间?

//自定义列在cookie中保存一年

# Ext.state.Manager.setProvider( 
#       new Ext.state.CookieProvider({ 
#         expires: new Date(new Date().getTime()+(1000*60*60*24*365)) 
#       }) 
#     ); 

你可能感兴趣的:(ext)