2012-05-11 10 views
0

で検索フィルタ、ExtJSに:私はリストとコンボボックスに値のセットを持っているコンボボックス

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>'; 
      } 
     } 

    } 

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

答えて

0

データをコンボボックスに入力すると、displayFieldに基づいてフィルタリングされます。だから私はあなたが入力したテキストのように接頭辞を持つdisplayFieldを持つコンボの項目がないので、 "入力したテキストに基づいてフィルタリングしていないテキストを入力すると思います。

0

フィルタリングはサーバー側で動作していますが、Firebugのようなスイッチをオンにすると、入力したテキストに特殊なパラメータ(通常は名前付きのフィルタ)が表示されるため、サーバー側で何が起きているかを確認する必要があります。フィルターテキストを処理し、サーバー側で必要に応じてフィルターを作成する必要があります。

+0

いいえ、それはサーバーサイドのフィルタリングではありません。これはExtjsのコンボボックスで、フィルタリング機能を備えています。 – user1321824

関連する問題