Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要在每次渲染时重新加载ExtJs选项卡面板吗_Extjs - Fatal编程技术网

要在每次渲染时重新加载ExtJs选项卡面板吗

要在每次渲染时重新加载ExtJs选项卡面板吗,extjs,Extjs,我正在jsp页面中创建一组ExtJs面板和TabPanel,如下所示: //left panel var leftpanel = new Ext.Panel({ id :'leftpane', region:'west', width: leftPaneDefaultWidth, layout : 'fit', header : false, split:true }); //right tab

我正在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 ]
});
由于业务需要,我需要刷新/重新加载上面定义的右侧面板选项卡中的内容


有人能提出一个实现这一目标的最佳方法吗?

你可以听一些事件,如
绘制的
显示
初始化
和其他一些事件

检查此处的文档:

initialize
-组件初始化后激发

painted
-每当此元素在屏幕上实际可见(绘制)时激发。当您需要对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 ]
});

您可以收听诸如
绘制
显示
初始化
等事件

检查此处的文档:

initialize
-组件初始化后激发

painted
-每当此元素在屏幕上实际可见(绘制)时激发。当您需要对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 ]
});

您需要重新加载什么内容?我在“rightpaneltab”中有HTML内容和Java脚本。更准确地说,这些内容是使用另一个脚本加载的,该脚本是用封闭的JSP页面定义的。如果有一种方法可以在每次呈现选项卡时调用该脚本(换句话说,如果我能够以某种方式捕获呈现事件),那么即使这样也可以处理您需要重新加载的内容?我在“rightpaneltab”中有HTML内容和Java脚本。更准确地说,这些内容是使用另一个脚本加载的,该脚本是用封闭的JSP页面定义的。如果有一种方法可以在每次呈现选项卡时调用该脚本(换句话说,如果我能够以某种方式捕获呈现事件),即使这样也可以工作