您可以使用该beforerender事件隐藏列.在调用render函数以显示网格之前调用该事件.事件函数采用一个param,它就是网格本身.从此网格对象中,您可以获取网格的列模型,并调用setHidden方法以隐藏相应的列.从网格对象中,您还可以获取附加到网格的商店以供检查.
以下是代码的方式:
listeners: {
'beforerender' : function(grid) {
store = grid.getStore();
if(your-condition) {
cm = grid.getColumnModel();
cm.setHidden(0,true);
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可以在商店加载时检查和隐藏:
store.load({
callback: function(){
// access raw json data and check some columns to hide or not
if(store.getProxy().getReader().rawData.myColumn.hide) {
grid.columns[1].setVisible(false);
}
if(store.getProxy().getReader().rawData.myAnotherColumn.hide) {
grid.columns[4].setVisible(false);
}
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28769 次 |
| 最近记录: |