1. 程式人生 > >ExtJS 4 grid 帶引數 查詢 分頁 store beforeload

ExtJS 4 grid 帶引數 查詢 分頁 store beforeload

轉載自:[url]http://blog.sina.com.cn/s/blog_6d1c583c0100vkr2.html[/url]
先上核心程式碼,恍然大悟的直接去修改程式碼吧!



store.on('beforeload', function (store, options) {

var new_params = { name: Ext.getCmp('search').getValue() };
Ext.apply(store.proxy.extraParams, new_params);
// alert('beforeload');
});





在Ext 3 中的

store.on('beforeload', function () {
store.baseParams = {
name: '5555555',
intss: '666666666'
};
});

已經不適合與ext4 系列了。



下面給出完整的程式碼。原理很簡單,將搜尋條件放在store的baseParams中,每次載入都賦值。

只是需要強制賦值,因為預設的pagetoolbar只會把start、limit、page、sort、dir傳遞給store。

var store = new Ext.data.Store({
pageSize: GridPageSize,
model: 'Master',
autoLoad: false,
proxy: {
type: 'ajax',
url: '/master/GetMasterData',
reader: {
type: 'json',
root: 'data',
totalProperty: 'totalCount'
}
},
fields: [
{ name: 'Id' },
{ name: 'Master_Name' }


//排序
sorters: [{
property: 'Master_Name',
direction: 'DESC'
}]



});


store.on('beforeload', function (store, options) {

var new_params = { name: Ext.getCmp('search').getValue() };
Ext.apply(store.proxy.extraParams, new_params);
// alert('beforeload');
});

store.load({
params: { start: 0, limit: GridPageSize }
})