本来是每页显示25条记录,当点击下一页时,前一页的数据也在,还是显示所有的数据,分页没用,求高手指点^^小弟感激不尽!
关键代码如下:
var datas = new Ext.data.HttpProxy({url:Main.ContextPath+'/operates/userInstall!getUserBaseInfo.action'});
var ds = new Ext.data.Store({   
        proxy:datas,
        reader:new Ext.data.ArrayReader({},[ 
            {name:'id'},   
            {name:'userName'},
            {name:'roleName'},
            {name:'rName'},
            {name:'useCompany'},
            {name:'status'},
            {name:'num'},
            {name:'lastTime'}
            ])
        });
    
    var gridDivId = "user_menu_"+this.pageId ;
    this.gridTable = new Ext.grid.GridPanel({   
        el: gridDivId,   
        store:ds,   
        cm:cm,   
        sm:sma,       
        stripeRows: true, 
        //autoExpandColumn:2,
        viewConfig:{   
            forceFit:true 
         },   
        //autoHeight:true,
        height:Main.getBodyHeight() - 10,   
        width:Main.getBodyWidth() - 200,
        tbar : tbar,
        bbar : new Ext.PagingToolbar({
         afterPageText: '共{0}页',
         beforePageText: '当前页',
pageSize : 25,
store : ds,
displayInfo : true,
displayMsg : ' {0} - {1} 条 共 {2} 条记录',
emptyMsg : "暂无数据"
}),
        title:'用户管理'  
        });   
   this.gridTable.render();
   ds.load({params:{start:0,limit:25}});

解决方案 »

  1.   

    在reader中设置属性,
    root : 'rows',//这个按照实际情况设置
    totalProperty: 'total',数据如下:
    {
       total: 2,//记录总数
        rows: [ // an Array
            { 'id': 1, 'name': 'Bill', occupation: 'Gardener' },
            { 'id': 2, 'name': 'Ben', occupation: 'Horticulturalist' }
        ]
    }
      

  2.   


    reader : new Ext.data.JsonReader({
    root : 'List',
    totalProperty : 'Count',
    id : 'id'
    }
    要加这两个属性,后他查询完返回来就可以了
      

  3.   

    楼主 后台分页写了没?
    分页时传回服务器的是:
    start:0
    ,limit:25
    第二页时就是:
    start:25,limit:25
    第三页时就是:
    start:50,limit:25
    .
    .
    .
    按这个来查询,然后返回给客户端就行了……