ext分页的页数选择,记录PageSizePlugin的使用

记录一下PageSizePlugin的使用:
PageSizePlugin.js

Ext.namespace('Ext.ux');

Ext.ux.PageSizePlugin = function() {
Ext.ux.PageSizePlugin.superclass.constructor.call(this, {
store: new Ext.data.SimpleStore({
fields: ['text', 'value'],
data: [['10', 10], ['20', 20], ['30', 30], ['50', 50], ['100', 100]]
}),
mode: 'local',
displayField: 'text',
valueField: 'value',
editable: false,
allowBlank: false,
triggerAction: 'all',
width: 60
});
};

Ext.extend(Ext.ux.PageSizePlugin, Ext.form.ComboBox, {
init: function(paging) {
paging.on('render', this.onInitView, this);
},

onInitView: function(paging) {
paging.add('-',
this,
'条/页'
);
this.setValue(paging.pageSize);
this.on('select', this.onPageSizeChanged, paging);
},

onPageSizeChanged: function(combo) {
this.pageSize = parseInt(combo.getValue());
compage = parseInt(combo.getValue());
this.doLoad(0);
}
});

本来想加一个“全部”选项,但还没试出来,如果那位弄出来了劳烦告诉在下一声。

grid中的代码片段:

bbar : new Ext.PagingToolbar({
pageSize : pagesize,
displayInfo : true,
emptyMsg : '没有找到相关数据',
store : store,
plugins : [new Ext.ux.PageSizePlugin()]
})


很简单,这就行了,当然之前还要把该传的参数给传过去,我是这样传的,一劳永逸:

store.on('beforeload', function(thiz, options) {
var a= Ext.get('a').dom.value;
var b= Ext.get('b').dom.value;
Ext.apply(thiz.baseParams, {
a: a,
b: b
});

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值