记录一下PageSizePlugin的使用:
PageSizePlugin.js
本来想加一个“全部”选项,但还没试出来,如果那位弄出来了劳烦告诉在下一声。
grid中的代码片段:
很简单,这就行了,当然之前还要把该传的参数给传过去,我是这样传的,一劳永逸:
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
});
});