0

一連の値のリストを含むコンボ ボックスがあり、

Ext.define('loincList', {
            extend: 'Ext.data.Model',
            fields: [{ name: 'loincNumber', mapping: 'loincNumber' },
                     { name: 'component', mapping: 'component' }            
            ]
        });    

ds = Ext.create('Ext.data.Store', {
            model: 'loincList',
            proxy: {
                type: 'ajax',
                url : url+'/lochweb/loch/LOINCData/getLOINCData',
                reader: {
                    type: 'json',
                    root: 'LOINCData'
                }
            }
        });

コンボボックス:

{
        xtype: 'combo',
        fieldLabel: 'Search Loinc Code',
        name: "loincId",       
        displayField: 'loincNumber',                    
        valueField: 'id',
        width: 400,                 
        store: ds,
        queryMode: 'local',
        allowBlank:false,
        listConfig: {
            getInnerTpl: function() {
                return '<div data-qtip="{loincNumber}.{component}">{loincNumber} {component} {status}</div>';
            }
        }

    }

コンボボックスに数字を入力すると、入力した数字に基づいてフィルタリングされますが、テキストを入力すると、入力したテキストに基づいてフィルタリングされません。入力したテキストに基づいてフィルタリングする方法。

4

2 に答える 2

0

コンボボックスにデータを入力すると、に基づいてフィルタリングされますdisplayField。したがって、「テキストを入力すると、入力したテキストに基づいてフィルタリングされない」と思います。これは、入力したdisplayFieldテキストのように、コンボ内にプレフィックスが付いたアイテムがないためです。

于 2012-05-13T16:43:03.477 に答える
0

フィルタリングはサーバー側で機能しています。Firebug などをオンにすると、コントロールに入力したテキストを含む特別なパラメーター (通常はフィルターという名前) が表示されます。そのため、サーバー側で何が起こるかを確認する必要があります。フィルター テキストを処理し、サーバー側で必要に応じてフィルターを作成する必要があります。

于 2012-05-11T12:07:04.360 に答える