Soy nuevo en el mundo Extjs. Estoy usando la versión 4 y me gustaría saber como refrescar los datos del PagingToolbar asociado a mi Grid.
Tengo el siguiente store:
- Código: Seleccionar todo
Ext.define('Clientes', {
extend: 'Ext.data.Model',
idProperty: 'clientes',
fields: [
{name:'id'},
{name: 'nombre'},
{name: 'apellido1'},
{name: 'apellido2'},
{name: 'nifcif'},
{name: 'email'}
]
});
var store = Ext.create('Ext.data.Store', {
model: 'Clientes',
remoteSort: true,
pageSize: 2,
proxy: {
type: 'pagingmemory',
data: datos,
reader: {
type: 'array'
}
}
});
Mi paginador es el siguiente:
- Código: Seleccionar todo
var paginacion = Ext.create('Ext.PagingToolbar', {
id:'idPaginacion',
emptyMsg: "No existen elementos",
renderTo: 'ColumnaDerechaSinMenu',
pageSize: 2,
width: 875,
store: store,
displayInfo: true,
plugins: Ext.create('Ext.ux.SlidingPager', {})
});
que esta asociado al siguiente grid:
- Código: Seleccionar todo
var grid = Ext.create('Ext.grid.Panel', {
id:'idGrid',
store: store,
stateful: true,
stateId: 'stateGrid',
columns: [
{
text : 'ID',
sortable : false,
dataIndex: 'id',
hidden:true
}
....
....
....
],
bbar: paginacion,
height: 200,
width: 875,
title: 'Listado de clientes',
viewConfig: {
stripeRows: true
}
});
Este grid esta dentro de un formulario y este formulario tiene un botón. Al pulsar este botón hago una llamada con JSON y obtengo nuevos valores para mi grid. Para el grid consigo actualizar los datos pero he probado algunas opciones para que se me actualice el PagingToolBar con el nuevo número número de registros pero nada.
Al ser pulsado el botón del formulario se realiza la acción de JSON que nos duelve un array con los nuevos datos.
- Código: Seleccionar todo
Ext.get('idCriterios').on('click', function(){ //Mostrar los datos en el formulario de un cliente en concreto por id
var noCache = Date();
$.getJSON("./bandejaExpediente2009SinValidar.do?metodo=busquedaClientes&"+valoresURL,{"noCache": noCache},function(data){
datos = new Array(data.length);
$.each(data, function(i){
var array = new Array();
array[0] = this.id;
array[1] = this.nombre;
array[2] = this.apellido1;
array[3] = this.apellido2;
array[4] = this.nifcif;
array[5] = this.email
datos[i] = array;
});
var grid = Ext.getCmp('idGrid');
Ext.grid.dummyData = datos;
grid.getStore().loadData(Ext.grid.dummyData);
});
});
Con grid.getStore().loadData consigo que el grid se actualice con los nuevos datos, pero el pagingToolBar no se me actualiza. ¿Alguien puede ayudarme?
Muchas gracias de antemano

