当我管理使用代理(ajax)的网格上的工具栏时,我遇到了一些问题。
this.grid = new Ext.create('Ext.grid.Panel',{
region : 'center',
loadMask : true,
layout : 'fit',
store : 'Contenedores',
tbar: [
{ text: 'Exportar Excel' },
'->',
{ text:'Buscar', handler: this.buscar, scope: this},
'-',
{ text:'Limpiar', handler: this.limpiar, scope: this}
],
columns : [],
bbar : new Ext.create('Ext.toolbar.Paging',{
store: 'Contenedores', displayInfo: true,
displayMsg : 'Registros {0} - {1} de {2}',
emptyMsg : 'No hay registros'
})
});我遇到的问题是:
提前谢谢。
发布于 2013-04-11 22:19:00
如果执行store.load()的预期结果是进入网格中的第一个页面,则只需在分页工具栏上调用moveFirst(),而不是直接加载到存储中。示例:
var pagingtb = Ext.create('Ext.toolbar.Paging',{
store: 'Contenedores',
displayInfo: true,
displayMsg : 'Registros {0} - {1} de {2}',
emptyMsg : 'No hay registros'
});
this.grid = Ext.create('Ext.grid.Panel',{
region : 'center',
loadMask : true,
layout : 'fit',
store : 'Contenedores',
tbar: [
{ text: 'Exportar Excel' },
'->',
{ text:'Buscar', handler: this.buscar, scope: this},
'-',
{ text:'Limpiar', handler: this.limpiar, scope: this}
],
columns : [],
bbar : pagingtb
});
pagingtb.moveFirst();此外,在new -> create()返回指定类的实例之前,不需要关键字create()。
如果需要存储发送额外的参数,则可以在调用工具栏上的moveFirst()或doRefresh()之前在代理上设置它们。示例:
store.getProxy().extraParams.someParameter1 = 'some value';
store.getProxy().extraParams.someParameter2 = 'another value';
pagingtb.doRefresh(); // or .moveFirst() if you want the grid to
// move to the first page after loadhttps://stackoverflow.com/questions/15959332
复制相似问题