2016-05-06 26 views
0

我使用的是ExtJS 6.0.2中的TreePicker。我想知道如何對拾取​​器數據執行搜索或查詢,類似於此示例 - Fiddle。它具有這個屬性是從組合框的內置功能:搜索Sencha TreePicker

queryMode: 'local' 

我所做的文本字段編輯,我想知道是否有執行搜索任何內置的方式還是我寫的代碼手動完成。對於手動方式,我嘗試通過在TreePicker的config屬性中編寫代碼來捕獲TextField的更改事件,但未能獲取要觸發的事件。我在這裏錯過了什麼,請指導。

回答

1

看來這個組件有一個非常簡單的實現,並且不支持任何搜索功能。 你可以開始實施你的需要,學習Ext.form.field.ComboBox源代碼,以便「複製」只有你想要的行爲。

例如,您會看到有一個選擇器的方法可以覆蓋以處理更改事件。一個非常非常簡單的「搜索上的變化」擴展名可以用以下重寫添加:

 ... 
     onFieldMutation: function(e) { 
      var me = this, 
       store = me.getStore(), 
       rawValue = me.inputEl.dom.value; 
      store.filter('text', rawValue); 
     }, 
     ... 

Fiddle

+0

謝謝,但在此之前,我無法獲得文本框的變化事件,火災,對任何指針? –

+0

您不需要觸發事件,只需重寫onFieldMutation方法即可。 –

+0

我很抱歉,但我認爲你在這裏感到困惑,我沒有使用組合框組件,也沒有在我的代碼中的任何方法組合框被繼承。小提琴鏈接是組合框的一個例子,我試圖在這裏實現與TreePicker類似的東西。 –