访问网格面板Extjs中的存储
这可能是一个愚蠢的问题,但我不知道如何访问gridpanel中的存储访问网格面板Extjs中的存储,extjs,Extjs,这可能是一个愚蠢的问题,但我不知道如何访问gridpanel中的存储 var grid = new Ext.grid.GridPanel({ ..... store: store, ...... listeners: { 'beforerender' : function(grid) { //grid.getStore(); } } 我想遍历存储,但是grid.getSto
var grid = new Ext.grid.GridPanel({
.....
store: store,
......
listeners: {
'beforerender' : function(grid) {
//grid.getStore();
}
}
我想遍历存储,但是grid.getStore()返回空对象。您只需执行
grid.store
如果您知道它将在网格渲染之前填充数据(您似乎是从网格
beforerender
事件调用它),则可以执行grid.store.getRange()
以获取要循环的记录,正如您在问题中提到的。存储变量在侦听器代码中仍然可见:)看起来加载存储的调用是在afterrender事件之后进行的,是否可能?是的,这通常是顺序,如果您使用ajax获取存储数据,网格将在加载数据之前进行渲染。我假设您是在页面初始化之后的某个时间创建网格的,这就是为什么您要在beforerender
事件中尝试这样做的原因。据我所知,您正在尝试遍历存储区的记录,我会在存储区中添加一个加载事件的侦听器(一旦数据加载就会触发),然后将您的迭代功能放在其中。e-zing有一个很好的观点,您的问题似乎是在beforerender
事件中运行此操作,而存储尚未加载。见下面我的评论。