tabpanel的各个tab中的内容通过iframe加载,现在不知道如何在tabchange的时候对tab中的内容进行dolayout。
这个问题困扰好久了 =.= ,感谢!
[code="java"]
var tabs = new Ext.TabPanel({
enableTabScroll : true
});
tabs.on('tabchange', function(tp, p) {
//有没法子在这个地方遍历下p下面的所有panel各个dolayout
});
addTab = function(title, url) {
tabs.add({
title : title,
iconCls : 'tabs',
contentEl : Ext.DomHelper.append(document.body, {
tag : [b][color=red]'iframe'[/color][/b],
style : "border 0px none;scrollbar:true",
src : url,
height : "100%",
width : "100%"
})
}).show();
}
new Ext.Viewport({
layout : 'fit',
items : [tabs]
})
[/code]
然后是添加tab的代码
[code="java"]
addTab ('tab1','viewTab1.do');
addTab ('tab2','viewTab2.do');
[/code]
主要代码如上:各个tab页面是通过iframe形式加载,
问题:以上代码默认的activetab为tab2,如果tab1是formpanel的两列布局,
则从tab2切换过来时tab1的formpanel显示为1列去了
(此时如果点击该页面上的一个按钮进行formpane.doLayout()就又恢复正常了)。
而当我代码最后加了tab2.setActiveTab(0),让它默认先显示内容为formpanl两列布局的tab1时,此时完全正常。
求高手看下在不改变iframe加载形式的情况如何使我tabchang时重新doLayout下,使布局正常显示。
[img]http://dl.iteye.com/upload/attachment/218174/be5bcd7f-4529-348e-889a-69b93fe425e3.png[/img]