Heim  >  Artikel  >  Web-Frontend  >  extjs tabpanel限制选项卡数量实现思路及代码_extjs

extjs tabpanel限制选项卡数量实现思路及代码_extjs

WBOY
WBOYOriginal
2016-05-16 17:38:261206Durchsuche
复制代码 代码如下:

var tabIndex = 'shouye';
var tabIndex2 = 'shouye';
var tabIndex3 = 'shouye';
var tabIndex4 = 'shouye';
var tabIndex5 = 'shouye';
var tabIndex6 = 'shouye';
var tabIndex7 = 'shouye';
/**
* 向TabPanel组件中添加窗口或激活已经存在的窗口
* 并将指定资源加载进窗口
* @param node : 传入的Node节点
*/
var loadPanel = function(node) {
var id= node.id;//获取节点的id
tabIndex7 = id;
var href = node.attributes.href;//获取节点中的href属性
var text = node.text;
var mainPanel = Ext.getCmp('mainPanel');
//mainPanel.remove('mainPanel', true);
var qtip = node.attributes.qtip;
var tab = mainPanel.getComponent(String(id));//获取指定id的组件对象
if(tab) {
mainPanel.setActiveTab(tab);//检验当前Tab选项卡是否存在,如果存在只需要激活
return;
}
//如果选项卡不存在,则以下为创建选项卡代码
tab = mainPanel.add(new Ext.Panel ({
//创建新选项卡的配置
id : String(id),//设置ID,需强制转换为string类型
title : text,//设置选项卡标题
tabTip : text,
html : '',
autoScroll: true,
enableTabScroll:true,
defaults: {autoScroll:true},
closable : true //是否可以关闭
}));
mainPanel.setActiveTab(tab);//创建选项卡后,将其激活
mainPanel.remove(tabIndex, true);
tabIndex = tabIndex2;
tabIndex2 = tabIndex3;
tabIndex3 = tabIndex4;
tabIndex4 = tabIndex5;
tabIndex5 = tabIndex6;
tabIndex6 = tabIndex7;
}

使用的是用变量存储 id 加载新的选卡时 交换 id ,从而限制了打开的选项卡数量,如果不是一定要这个效果,建议不要频繁的关闭和创建tabpanel
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn