我正在一个jsp页面中创建一组ExtJs面板和TabPanel,如下所示:
//left panel
var leftpanel = new Ext.Panel({
id :'leftpane',
region:'west',
width: leftPaneDefaultWidth,
layout : 'fit',
header : false,
split:true
});
//right tabpanel
var rightpaneltab = new Ext.TabPanel({
id:'rightpanetabs',
border:false,
enableTabScroll: true,
region:'center'
});
//parent panel
var toppanel = new Ext.Panel({
id : 'main',
layout:'border',
renderTo : 'parentDiv',
items: [ leftpanel , rightpaneltab ]
});
由于业务需求,我需要刷新/重新加载上面定义的 rightpaneltab 中的内容。
有人可以建议实现这一目标的最佳途径吗?
答案 0 :(得分:2)
您可以收听painted
,show
,initialize
等事件。
在此处查看文档:{{3}}
initialize
-组件初始化后触发
painted
-每当此Element在屏幕上实际可见(绘制)时触发。当您需要对DOM元素执行“读取”操作(即计算自然尺寸和位置)时,此功能很有用。
show
-每当显示组件时触发
用法:
//left panel
var leftpanel = new Ext.Panel({
id :'leftpane',
region:'west',
width: leftPaneDefaultWidth,
layout : 'fit',
header : false,
split:true
});
//right tabpanel
var rightpaneltab = new Ext.TabPanel({
id:'rightpanetabs',
border:false,
enableTabScroll: true,
region:'center',
listeners: {
painted: function () {
// reload the content here
}
}
});
//parent panel
var toppanel = new Ext.Panel({
id : 'main',
layout:'border',
renderTo : 'parentDiv',
items: [ leftpanel , rightpaneltab ]
});