ExtJS TabPanel获取组件问题

2025-05-11 17:49:50
推荐回答(1个)
回答1:

1一般常用的方法是给新增的panel 设定itemId , 用 容器.getComponent(itemId)来获取这个组件. (推荐)

var tabs = new Ext.TabPanel({  
    renderTo: document.body,  
    itemId:"tablpanel1"
    height: 100  
});  
tabs.add({  
    title: '标题1',  
    itemId:"panel1"
    html: '内容1'  
});  

var newp=tabs.getComponent("panel1") // newp是新增的记录

2 给新增的panel 设定Id 用  Ext.body.getCmp(ID)来获取这个组件. (不推荐)

var tabs = new Ext.TabPanel({  
    renderTo: document.body,  
    itemId:"tablpanel1"
    height: 100  
});  
tabs.add({  
    title: '标题1',  
    id:"panel1"
    html: '内容1'  
});  

var newp=Ext.body.getCmp("panel1") // newp是新增的记录

3. 设置全局变量为 新增的panel  使用时直接用 变量名来引用. (不推荐)

var newp=new Ext.Panel({
    title: '标题1',  
    id:"panel1"
    html: '内容1'
});
var tabs = new Ext.TabPanel({  
    renderTo: document.body,  
    itemId:"tablpanel1"
    height: 100  
});  

tabs.add(newp) // // newp是新增的记录

4. 在自定义类中用 属性名 为新增的panel, 用属性名来引用 获取 (推荐)

this.newp=new Ext.Panel({
    title: '标题1',  
    id:"panel1"
    html: '内容1'
});

this.tabs = new Ext.TabPanel({  
    renderTo: document.body,  
    itemId:"tablpanel1"
    height: 100  
});  

this.tabs.add(this.newp); // this.newp是新增的记录