在ExtJs 3.4中,我有一个带有两个选项卡的TabPanel,第二个选项卡包含一个FormPanel,其中包含一个ButtonGroup。如果第二个选项卡处于活动状态,当我加载页面时,一切都很好,但是当第一个选项卡处于活动状态并且我切换到第二个选项卡时,则按钮组中没有按钮,只是标签。下面是代码:ExtJS 3.4:在隐藏的tabpanel中渲染按钮
var tabs = new Ext.TabPanel({
renderTo: 'tabs',
width:500,
forceLayout: true,
activeTab: 0,
deferredRender: false,
defaults:{autoHeight: true},
items:[
{contentEl:'tab1', title: 'Tab1'},
{contentEl:'tab2', title: 'Tab2'}
]
});
var form = new Ext.form.FormPanel({
width : 400,
autoHeight: true,
renderTo: 'form',
bodyStyle: 'padding: 5px',
items: [
{
xtype: 'buttongroup',
fieldLabel: 'Label',
items:
[
{
xtype: 'button',
text: 'Find By User',
width: 100,
scope: this,
handler: this.handleFind
},
{
xtype: 'button',
text: 'Find All',
width: 100,
scope: this,
handler: this.handleFindAll
}
]
}
]
});
我设置了deferredRender: false
和forceLayout: true
,也尝试了hideMode: 'offsets'
,但这些并没有帮助。
它给了我一个:遗漏的类型错误:无法未定义EXT-all.js的读取属性 '事件':7 Ext.Container.Ext。 extend.lookupComponent ext-all.js:7 Ext.Container.Ext.extend.add ext-all.js:7 (匿名函数)ext-all.js:7 Ext.apply.each ext-base.js :7 Ext.Container.Ext.extend.add ext-all.js:7 Ext.Container.Ext.extend.initComponent ext-all.js:7 Ext.Panel.Ext.exten d.initComponent ext-all.js:7 Ext.Component – user1721713
您是否添加了'items:[form]'和comment' // contentEl:'tab2','?正如您在jsfiddle示例中看到的,代码正在运行。如果你把所有的代码放在jsfiddle中,我可以看看它。 –
是的,我做到了。因为我通过将hideMode:'offset'添加到默认值来解决了这个问题。谢谢你的建议! – user1721713