2013-08-26 36 views
-1

我有兩個ExtJs TreePanel。一棵樹被完全加載(稱爲FLTree),另一棵被部分加載(稱爲PL樹)。當用戶點擊完整加載樹中的節點時,該節點出現在部分加載的樹中,我想在部分加載的樹中觸發該節點的checkchange事件。在EXTJS中同步兩個TreePanel的檢查更改事件4.1

enter image description here

這可能嗎?

+0

你能否看看答案是否正確? –

回答

0

是,Ext.tree.Panel已經被點擊的項目時所激發的itemclick事件(你需要將其添加在控制器或在TreePanel中的聽衆財產 的屬性有:。

someFunctionName: function(treeview, record, item, index, e, eOpts) { ... }
從記錄變量就可以得到數據從第一棵樹的選擇節點所需

要找到其他TreePanel中您可以使用樹視圖中的up()down()方法:

var parentContainer = treeview.up('container_xtype[someProperty1=someValue1]');

您可以在步行組件層次結構(獲取父容器,其中包含均包含樹面板)。

var pLtree = parentContainer.down('treepanel[someProperty2=someValue2]');

如果兩個TreePanel中沒有共同的父,那麼你可以使用它返回匹配組件的數組

var pLtree = Ext.ComponentQuery.query('treepanel[someProperty2=someValue2]')[0];
全局方法。 但是確保你使用了一個好的組件選擇器查詢(你可以檢查返回數組的長度== 1)。

最後,您需要使用描述爲HEREpLtree.fireEvent('checkchange', ...);