`
n15865386136
  • 浏览: 22002 次
社区版块
存档分类
最新评论

Extjs4点击树节点生成Tab或激活Tab

阅读更多
Ext.onReady(function(){
	var store = Ext.create('Ext.data.TreeStore', {
    root: {
        expanded: true,
        children: [
            { text: "detention", leaf: true,id:'id1'},
            { text: "homework", expanded: true, id:'id2',children: [
                { text: "book report", leaf: true, id:'id3'},
                { text: "alegrbra", leaf: true,id:'id4'}
            ] },
            { text: "buy lottery tickets", leaf: true ,id:'id5'}
        ]
    }
	});

	var tree=Ext.create('Ext.tree.Panel', {
	    title: 'Simple Tree',
	    width: 200,
	    height: 150,
	    store: store,
	    rootVisible: false,
	    renderTo: Ext.getBody()
	});
	var tabs=Ext.create('Ext.tab.Panel', {
	    width: 400,
	    height: 400,
	    renderTo: document.body,
	    items: [{
	        title: 'Foo'
	    }, {
	        title: 'Bar',
	        tabConfig: {
	            title: 'Custom Title',
	            tooltip: 'A button tooltip'
	        }
	    }]
	});
	tree.on('itemclick',function(view,record,item,index,e,opts){
		//获取当前点击的节点
		 var treeNode=record.raw;
		 var id = treeNode.id;
		 var text=treeNode.text;
		 //获取点击的树节点相同的tab标签
		 var tab = tabs.getComponent(id);
		 if(!tab){//如果不存在
		 	tabs.add({//用点击树的节点的ID、text新建一个tab
		 	 id:id,
		 	 title:text
		 	})
		 }else{//如果存在
		 	tabs.setActiveTab(tab)//Active
		 }
		
	})
})

分享到:
评论
2 楼 n15865386136 2012-11-05  
lusam06 写道
tabs.add(panel);
panel是从数据库中动态获取的,我怎么去根据数据库中的url动态创建并添加到tabs中呢??

panel中可以是一个iframe
用panel的html属性。
1 楼 lusam06 2012-09-23  
tabs.add(panel);
panel是从数据库中动态获取的,我怎么去根据数据库中的url动态创建并添加到tabs中呢??

相关推荐

Global site tag (gtag.js) - Google Analytics