Soy principiante y necesito ayuda para paginar un grid.
Soy principiante y estoy aprendiendo como mostrar el contenido de un archivo xml en un grid, hasta ahi todo bien. El problema comienza cuando quiero ir mostrando de a grupos de registros (paginado), me muestra siempre todos los registros. Busque varios ejemplos y no encuentro el error, les dejo el codigo para ver si me pueden dar una mano, para los que llevan mas tiempo de manejo del codigo seguro se van a dar cuenta rapido. Mil Gracias.
var sUrl = '/wp-content/uploads/tables/TCgpcars.xml';
Ext.onReady(function(){
var Person = Ext.data.Record.create([
{name: 'Pos'},
{name: 'Nro'},
{name: 'Piloto'},
{name: 'Marca'},
{name: 'Puntos'}
]);
var reader = new Ext.data.XmlReader({
record: 'ChampData',
totalRecords: 'TotalRecord',
totalProperty: 'TotalRecord',
id: 'Pos',
}, Person);
//creates the Ext.data.Store
var store = new Ext.data.Store({
url: sUrl,
totalProperty: 'total',
reader: reader //setting the reader
});
var pager = new Ext.PagingToolbar({
store: store, //
deberías justamente después de que llames los datos llamar la función por decirlo así que hace que pagine el grid,
que es la que dice
var pager
entonces lo que yo creo que debes hacer es justamente después de que llamas los datos en el grid es decir en el store colocas
renderer: pager, y yo creería que que funcionaria mas sin embargo nos cuentas como te fue.
Hola therion, primero que nada gracias por tu respuesta tan rapida. Si no entendi mal el codigo modificado quedaria asi:
// create the grid
var grid = new Ext.grid.GridPanel({
store: store, //le asignamos la fuente de datos
renderer: pager,
columns: [ //creamos las columnas
{header: "Pos.", width: 38, dataIndex: 'Pos', type: 'string'},
{header: "Nro", width: 35, dataIndex: 'Nro', type: 'string'},
{header: "Piloto", width: 100, dataIndex: 'Piloto', type: 'string'},
{header: "Marca", width: 60, dataIndex: 'Marca', type: 'string'},
{header: "Ptos", width: 40, dataIndex: 'Puntos', type: 'int'}
],
renderTo:'gridpanel',
width:540,
height:200,
bbar: pager, //
Si entendi bien la propuesta de modificación, no modifico el problema que tengo, sigue mostrando el total de los registros de primera, sin paginar.
Disculpa si no te entendi soy nuevo en esto...
El servidor rebería regresar SOLO los registros que quieres visualizar, realmente la paginación la realiza el servidor, del lado de ExtJS solo se mandan a llamar las paginas correspondientes.
Saludos
Hola Crysfel!!!, gracias por responder. Entiendo lo que me decis pero ahora mi gran duda es como poder manejar esto ya que yo tomo los datos de un simple archivo xml. Se puede hacer la paginación tomando todos los datos desde un archivo xml...?
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.