extjs4 tabpanel,动态添加一个tab后,再点击别的tab,无法进行切换
var centerPage = Ext.create("Ext.tab.Panel", {
region : "center",
activeItem : 0,
frame : true,
id : "dataGrid",
name : "dataGrid",
width : 300,
height : 400,
activeTab : 1,
//plugins: Ext.create("Ext.ux.TabScrollerMenu", {
// maxText: 15,
// pageSize: 5
//}),
items : [ {
id : "systemtab1",
name : "systemtab1",
title : "系统介绍",
html : "<img src='images/getCAKS981W.jpg' style='height : 100%; width : 100%'></img>",
listeners: { activate: handleActivate }
}]
});
function addTab(id, text) {
var tabName = "tab_" + id;
var tab = centerPage.getComponent(tabName);
if (!tab) {
tab = centerPage.add({
id : tabName,
name : tabName,
title : text,
closable : true,
loader : {
url : "depart/default.action",
loadMask : "loading...",
autoLoad : true,
scripts : true
}
}).show();
} else {
centerPage.setActiveTab(tab);
}
}
如果去掉.show()方法,则可以进行点击切换,但是无法加载script语句,新增tab页上的方法不会执行
EXTJS4
我也在项目里往Ext.tab.Panel里动态添加过tab
Ext.getCmp("Ext.tab.Panel的ID").add({
id:
title:
...
})
直接这样加的 没有出现什么问题
或者 你可以跟踪到 beforeactivate: function (newTab, oldTab) 方法里面去 看看 是怎么回事...