请问Ext.PagingToolbar里的页数如何设置?

请问Ext.PagingToolbar里的页数如何设置?,第1张

bbar: new Ext.PagingToolbar({

store: store,

pageSize: Ext.page.pageSize,

displayInfo: true,displayMsg :"目前显示第 {0} - {1} 条,共 {2} 条",

emptyMsg: "没有符合条件的配置参数"

})

ExtJs Grid分页时,默认情况下每页的序号都是从1起始的,这往往不符合我们的习惯。这里实现了序 号的自动增加。

实现步骤如下:

1、定义全局变量。

var record_start = 0

2、Grid的columns部分的定义。

columns:[newExt.grid.RowNumberer({

header:"序号",

width:40,

renderer:function(value,metadata,record,rowIndex){

returnrecord_start+1+rowIndex

}

}),{

header:"项目编号",

width:50,

sortable:false,

dataIndex:"projectNumber"

}]

3、Grid 的PagingToolbar部分的定义。

bbar:newExt.PagingToolbar({

store:grid_store,

pageSize:8,

displayInfo:true,

beforePageText:"第",

afterPageText:"/{0}页",

firstText:"首页",

prevText:"上一页",

nextText:"下一页",

lastText:"尾页",

refreshText:"刷新",

displayMsg:"当前显示记录从{0}-{1}总{2}条记录",

emptyMsg:"没有相关记录!",

doLoad:function(start){

record_start=start

varo={},pn=this.paramNames

o[pn.start]=start

o[pn.limit]=this.pageSize

this.store.load({params:o})

}

})

说明:

1、全局变量record_start用于记录列表开始的数据点,如第一页,那么为0,如第二页,那么为8,这 里分页pagesize设置为了8

2、分页中doLoad这部分的代码来自于Ext.PagingToolbar的doLoad方法,PagingToolbar在分页发生变 化时会调用这个方法来重新load数据,只是多了个对全局变量进行赋值的步骤,为的就是在分页发生变化 时,记录传递给Url的参数start的值。

3、在columns中实例化Ext.grid.RowNumberer时,重写了renderer方法,其实之所以这样做的原因,大家看一下 Ext.grid.RowNumberer源码中的renderer方法就知道了,就是根据行号+1来设置序号的,这里我们改这个方法,是为了得到行号+分页变化时得到的start参数的值+1 的值,这样就能够正确得到序号结合分页的数据


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/7839402.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-10
下一篇2023-04-10

发表评论

登录后才能评论

评论列表(0条)

    保存