筛选网格中的选项

时间:2012-08-22 08:48:05

标签: extjs filter grid

我在网格中使用过滤器选项,我可以在每列中选择要过滤的内容。对于我需要这样做的选项:

Ext.ux.ajax.SimManager.init({
    delay: 300,
    defaultSimlet: null
}).register({
    'filterEvents': {
        data: [
            ['Dag 1', 'Dag 1'],
            ['Dag 2', 'Dag 2']
        ],
        stype: 'json'
    }
});

 dagenFilter = Ext.create('Ext.data.Store', {
     fields: ['id', 'text'],
    proxy: {
        type: 'ajax',
        url: 'filterEvents',
        reader: 'array'
    }
});

但是因为过滤器选项需要是动态的而不是静态的,我想从服务加载选项。那个json的输出看起来像这样

{
"dagen": [{
    "name": "Dag 1",
    "reference": "Dag 1"
}, {
    "name": "Dag 2",
    "reference": "Dag 2"
}, {
    "name": "Dag 3",
    "reference": "Dag 3"
}, {
    "name": "Dag 4",
    "reference": "Dag 4"
}]

}

但我不知道该怎么做。

1 个答案:

答案 0 :(得分:3)

如果通过“网格中的过滤器选项”指的是FiltersFeature,答案很简单。 ListFilter可以由DataStore支持。

查看ListFilter hereoptions配置。具体而言,storephpMode也可能具有相关性。以下是一个例子:

{
    header: 'List Filter Column',
    dataIndex: 'list_data',
    width: 120,
    filter: {
        type: 'list',
        store: Ext.getStore('FilterOptions'),
        phpMode: true
    }
}