在 ExtJS 4 中,我可以创建一个过滤器来过滤我的网格。当本地设置为false时,我可以过滤我的商店。
var filtersCfg = {
ftype: 'filters',
autoReload: false, //don't reload automatically
local: false, //remote filter
// filters may be configured through the plugin,
// or in the column definition within the headers configuration
filters: [{
type: 'numeric',
dataIndex: 'id'
}, {
type: 'string',
dataIndex: 'name'
}, {
type: 'numeric',
dataIndex: 'price'
}, {
type: 'date',
dataIndex: 'dateAdded'
}, {
type: 'list',
dataIndex: 'size',
options: ['extra small', 'small', 'medium', 'large', 'extra large'],
phpMode: true
}, {
type: 'boolean',
dataIndex: 'visible'
}]
};
在 EXTJS 7 中我只能添加一个插件:
plugins: {
gridfilters: true
},
如何在 EXTJS 7 中添加远程过滤器。这仍然可能吗?我在文档中找不到任何东西。
此致
编辑:
我正在使用 data.Store 从我的 php/数据库中获取 json。在网格上排序不是问题。但是如何使用过滤器将参数发送到我的 php?
var Store = new Ext.data.Store({
extend: 'Ext.data.Store',
autoLoad: true,
remoteSort: true,
fields: [
'columnA','columnB'
],
pageSize : 50,
proxy: {
type: 'ajax',
actionMethods: {
create : 'POST',
read : 'POST',
update : 'POST',
destroy: 'POST'
},
url: 'data/URL.php',
reader: {
rootProperty: 'columns',
totalProperty: 'totalCount'
},
simpleSortMode: true,
extraParams: {
task: 'doFiltering'
}
},
sorters: [{
property: 'columnA',
direction: 'DESC'
}]
});