extjs tree激活tabPanel

Ext.onReady(function () {

            Ext.QuickTips.init();

            var tabPanel = new Ext.TabPanel({
                region: 'center',
                margins: '60 0 2 2',
                cmargins: '60 5 2 2'
            });

            var menuTree = new Ext.tree.TreePanel({
                useArrows: true,
                region: 'west',//指定布局  
                animate: true,
                collapsible: true,
                rootVisible: false,//不显示根节点  
                width: 200,
                title: '菜单导航',
                split: true,
                width: 200,
                minSize: 200,
                maxSize: 400,
                collapsible: true,
                margins: '60 0 2 2',
                cmargins: '60 5 2 2',
                root: new Ext.tree.AsyncTreeNode({//用Ext.tree.TreeNode不行  
                    id: 'menuRoot',
                    text: 'menuRoot'
                }),
                dataUrl: '../src/Handler/MainLeftTree.ashx',
                listeners: {
                    'click': function (node, e) {
                        var randomnumber = Math.floor(Math.random() * 100000);//作为地址的传递参数 以使每次访问时重新获取数据 而非缓存中信息  
                        var tab = Ext.get('tab_' + node.id);
                        e.stopEvent();//停止事件传递 否则会促使浏览器发送URL(菜单链接)向服务器发送请求  
                        if (node.leaf) {
                            if (tab == null) {
                                var subTabPanel = new Ext.Panel({
                                    id: 'tab_' + node.id,
                                    title: node.text,
                                    closable: true,
                                    html: '<iframe id="iframe_' + node.id + '" name="iframe_' + node.id + '" scrolling="auto" frameborder="0" width="100%" height="100%" src="' + node.attributes.href + "?random=" + randomnumber + '"></iframe>'
                                });
                                tabPanel.add(subTabPanel);//添加该panel  
                                tabPanel.setActiveTab('tab_' + node.id);//激活它  


                            } else {
                                tabPanel.setActiveTab("tab_" + node.id);//如果已经存在 则激活它  
                            }


                        }
                    }
                }

            });

            var viewPort = new Ext.Viewport({
                layout: 'border',
                renderTo: 'content',
                items: [menuTree, tabPanel
                ,
                {
                    region: 'south',
                    margins: '0 0 0 2',
                    border: false,
                    html: '<div class="menu south">gm后台管理系统 2014</div>'
                }

                ]//放进去才开始加载菜单项  
            });
        });

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值