无法在ExtJs中筛选本地记录

无法在ExtJs中筛选本地记录,extjs,extjs4.1,frontend,Extjs,Extjs4.1,Frontend,我有散列数组格式的数据。这三个字段是id、value和production\u group\u id。现在我要做的是根据记录的production\u group\u id筛选组合框 基本上,从存储区中初始填充的数据中取出。我想过滤字段。不知何故,听者没有工作 Ext.define('fabmin.view.ComboColumn', { extend: 'Ext.grid.column.Column', alias: 'widget.comboboxcolumn', w

我有散列数组格式的数据。这三个字段是id、value和production\u group\u id。现在我要做的是根据记录的production\u group\u id筛选组合框

基本上,从存储区中初始填充的数据中取出。我想过滤字段。不知何故,听者没有工作

Ext.define('fabmin.view.ComboColumn', {
    extend: 'Ext.grid.column.Column',
    alias: 'widget.comboboxcolumn',
    width: 100,
    isEditable: true,
    list: [], // list = [{id: 'id1', value: 'value1', production_group_id: 'production_group_id1 }, {id: 'id1', value: 'value1', production_group_id: 'production_group_id1 }]
    initComponent: function(){
        var me = this,
            list = me.list || [];

        if(me.isEditable){
            me.editor = Ext.create('Ext.form.ComboBox',{
                forceSelection: true,
                typeAhead: true,
                queryMode: 'local',
                displayField: 'value',
                valueField: 'id',
                store: Ext.create('Ext.data.ArrayStore', {
                    fields: ['id', 'value','production_group_id'],
                    data: list
                }),
                allowBlank: false,
                listeners: {
                    click: function (v, p, record, rowIndex, colIndex, store, view) {
                        debugger
                        var newdata  = [];;
                        for (i = 0; i < me.store.length; i++) {
                            if (me.store[i].production_group_id == record.production_group_id){
                                newdata.push(me.store[i])
                            }
                        }
                        debugger
                        me.store.load(newdata);
                    },
                    scope: me
                }
            });
        }

        me.renderer = function(v, p, record, rowIndex, colIndex, store, view) {
            var len = list.length,
                currOpt;
            while( len-- ) {
                currOpt = list[ len ];
                if ( v == currOpt.id ) {
                    return currOpt.value;
                }
            }
            return v;
        }
        me.callParent(arguments);
    }
});

如果您使用包括Ext.form.ComboBox在内的任何字段,那么您应该侦听更改事件。它是在字段中的值更改后激发的,所以当您从列表中选择某个内容时也是如此