2012-01-02 51 views
0

我已經使用ExtJs創建了一個Layout。它由一個左側菜單和一個主選項卡面板組成(我使用的主要組件是:Ext.tree.Panel和Ext.tab.Panel,位於Ext.Viewport內)外部onReady訪問extjs元素

一旦點擊了菜單元素,它就會被加載(通過Ajax POST)。這是使用jQuery製作的。

點擊某個按鈕(在選項卡內)後,我必須通過Ajax加載更多內容。我的問題是如何訪問選項卡範圍內的Ext元素(這是使用基於PHP的MVC創建的)。

例如,我怎麼會做這樣的事情?:

var tab = mainPanel.getActiveTab(); 
alert('Current tab: ' + tab.title); 

回答

0

如果你有一個ID配置了Ext.tab.Panel(如ID:一個tabpanel):

{ 
region: 'center', 
id: 'tabPanel', 
xtype: 'tabpanel', 
plugins: Ext.create('Ext.ux.TabReorderer')    
} 

你可以在Ext.onReady之外使用tab = Ext.getCmp('tabPanel').getActiveTab()

Ext.onReady不適用於任何作用域,它只是延遲加載其包含的js,直到ExtJS庫加載完成。

編輯:然後,當然你可以做tab.title - 我只注意到.title不列爲Ext.tab.Tab API文檔的屬性,但我測試,它是正確的用法。

+0

非常感謝你,這是我需要的答案 – jeanc 2012-01-02 03:28:18