一般在JS代码中这样设定store.load({params:{start:0,limit:20}})
下面的代码中还有个pageSize
var bbar = new Ext.PagingToolbar({
pageSize: 10,
store:bookStore,
displayInfo:true,
displayMsg:'第{0}条到{1}条,共{2}条',
emptyMsg:'没有记录'
});
那么pageSize和limit究竟有什么区别呢,其实limit后面的数据是页面刚加载上来显示的显示的当前页的查询条数,如果limit和pageSize值不同那么以后每次点击分页时显示的每页条数就是pageSize的值了,显然要保持一致了
我们后台代码中一般select * from tab limit #pageNo,#pageSize;这样的语句
那么我们就要知道#pageNo和JS中start的值的关系了,因为多次试验证明#pageSize就是JS上面的pageSize的值
如果在后台监控的话你会发现每次JS的start和pageSize有这么几种关系
start pageSize
0 20
20 20
40 20
60 20
80 20
经研究发现如果这样写逻辑代码就对了start=start/limit+1;为什么加一呢,因为SQL语句中limit 0,pageSiz和limit 1,pageSize效果一样
这样的话到页面第一页和第二页分页等于没有分,所以加一正好合适,搞定了