-1
我有兩個ExtJs TreePanel。一棵樹被完全加載(稱爲FLTree),另一棵被部分加載(稱爲PL樹)。當用戶點擊完整加載樹中的節點時,該節點出現在部分加載的樹中,我想在部分加載的樹中觸發該節點的checkchange事件。在EXTJS中同步兩個TreePanel的檢查更改事件4.1
這可能嗎?
我有兩個ExtJs TreePanel。一棵樹被完全加載(稱爲FLTree),另一棵被部分加載(稱爲PL樹)。當用戶點擊完整加載樹中的節點時,該節點出現在部分加載的樹中,我想在部分加載的樹中觸發該節點的checkchange事件。在EXTJS中同步兩個TreePanel的檢查更改事件4.1
這可能嗎?
是,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)。
最後,您需要使用描述爲HERE的pLtree.fireEvent('checkchange', ...);
。
你能否看看答案是否正確? –