日期:2014-05-16  浏览次数:20388 次

Ext TabPanel 第二次加载无法显示,第一次正常显示。
如题,
JScript code
//往右框架tab页面中加入一项
function addTab(jsfiles,jsObj)
{
    //动态加载js
    ScriptMgr.load({ 
        scripts:jsfiles.split(","),
        callback: function() 
            { 
                //设置tab项属性
                var objTabPanel=eval(jsObj);
                objTabPanel.tabPanel.closable=true;
                tabs.add(objTabPanel.tabPanel);
                tabs.activate(objTabPanel.tabPanel);
                tabs.setHeight(tabsHeight);
                objTabPanel.jsCallback();
            }
    });
}


------解决方案--------------------
JScript code
......
menuTree.on('click',function(node){
        if(node.isLeaf()){    
            //Ext.get('content-iframe').dom.src = node.attributes.link+'&node='+node.id; 
            var templink = node.attributes.link;
            var tempCss = node.attributes.iconCls;
            var n = contentPanel.getComponent(node.id);   
            if (!n) { ////判断是否已经打开该面板   
                n = contentPanel.add({   
                    'id':node.id,   
                    'title':node.text,   
                    iconCls: tempCss,
                    closable:true,   
                    autoLoad:{url:templink, scripts:true} //通过autoLoad属性载入目标页,如果要用到脚本,必须加上scripts属性   
                });   
            }   
            contentPanel.setActiveTab(n);  
             return true;   
         }else{   
          /**  
           *如是不是叶子节点,将展开目录  
           */  
            node.toggle();   
         }   

    });  
    
    //右边具体功能面板区   
    var contentPanel = new Ext.TabPanel({   
        region:'center',   
        enableTabScroll:true,   
        activeTab:0, 
        margins:'0 5 5 0',
        items:[{   
            id:'homePage',   
            title:'我的工作台',   
            autoScroll:true,  
            iconCls: 'workPingIconCss',
            autoLoad:{url:"temp3.html", scripts:true} //首页默认的加载页面
        }]   
    });