您的位置:首页 > Web前端 > JavaScript

ExtJS 4 grid 带参数 查询 分页 store beforeload 解决办法

2013-09-24 20:55 1176 查看
这尼玛,写这个的时候 网上看了很多例子,都不能用,最后看到这个.....转给大家看看。

先上核心代码,恍然大悟的直接去修改代码吧!

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 }

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: