50,528
社区成员
发帖
与我相关
我的任务
分享
var MainPanel = Ext.create('Ext.tab.Panel', {
id: 'mainPanel',
region: 'center',
width: '84%',
autoScroll: true,
deferredRender:false,
bodyStyle: "background-color:#dfe8f6; border-width: 0px 0px 0px 0px;background:transparent",
items: {
// contentEl: 'init',
id:'init',
title: 'Welcome',
autoScroll: true
} });
listeners:{
itemclick: function(view, record, item, index, e, eOpts) {
var tab = MainPanel.getActiveTab().getItemId();//得到当前活动的选项卡id
//创建数据源
alert("activeTabId="+tab);
//动态创建的选项卡id为树结点id,初始选项卡id为init,点击树结点,判断当前活动的选项卡id是否为点击的这个树结点id,不是的话MainPanel就添加一个新的选项卡。
if(tab != record.data.id || tab == 'init'){
var currentTab = MainPanel.getActiveTab();
MainPanel.remove(currentTab,true);
MainPanel.add({
id:record.data.id,
title:record.data.text,
deferredRender:false,
//autoTabs: true,
xtype: 'panel',//xtype可以让一个容器的子组件事先定义好,到真正需要的时候再初始化。
//closable : true, //closable表示该面板可以关闭
layout : 'fit',
height: '100%',
autoLoad :{
url : record.data.url, // 这里是存的一个action
params:{"tabId":record.data.id},
scripts: true // 加载的页面中js可运行
}
}).show();
MainPanel.setActiveTab(record.data.id);
MainPanel.doLayout(true);
}else {
alert("else");
Ext.getCmp(record.data.id).setActiveTab(tab);
}
},
scope : this
}