extjs 左边tree菜单,右边tabpanel中显示grid等信息的问题。
我现在做的已经实现了点击tree菜单的,右边出现grid,但是当关闭tabpanel中的grid,再打开相同的菜单时,tabpanel中不显示grid的信息,为什么?知道的告诉小弟一声,谢了。
一下是代码
var menuTree = new Ext.tree.TreePanel({
region:'west',
title:'功能菜单',
width:180,
// useArrows: true,
// minSize:150,
// maxSize:200,
// split:true,
// autoScroll:true,
// autoHeight:false,
collapsible:true,
// rootVisable:false, //不显示根节点
dataUrl: 'system/samlib/get-nodes.php',
root: {
// nodeType: 'async',
text: '菜单列表'
// draggable:false,
// id:'source'
},
listeners: {
'render': function(tp){
tp.getSelectionModel().on('selectionchange', function(tree, node){
if(node.isLeaf()){
// alert(node.attributes+"|"+node.leaf+"|"+node.text+"|"+node.id);
/* var tabWin = app.getModule('Spidermodel');
if(tabWin){
tabWin.launcher.handler.call(this.scope || this); //启动相应的模块
}
*/
// var contentTabs = this.getMainCenter();//中间展示区的一个tabPanel
/* var items = contentPanel.items;
items.each(function(item){
contentPanel.remove(item,true); //删除当前活跃的节点
});
*/
var n = contentPanel.getItem(node.id); //获得要显示的选项卡
if(!n){
n = contentPanel.add({
'id':node.id,
'title':node.text,
closable:true, //通过html载入目标页
layout:'form',
items: eval(node.id)
// html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="system/samlib/'+node.id+'.php?s=m"></iframe>'
});
}
contentPanel.setActiveTab(n);
contentPanel.doLayout();
}
})
}
}
});
------解决方案--------------------
add grid的时候加上closeAction:’hiden‘