2012-01-02 58 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