【问题标题】:How to re-render the panel to different div when panel already render to some other div当面板已经渲染到其他 div 时,如何将面板重新渲染到不同的 div
【发布时间】:2009-03-10 10:12:08
【问题描述】:
我创建了一个 Ext.Panel 对象,它正确呈现到我页面上的指定 div 元素。
我想将面板对象底层元素(以前呈现的 div 元素)替换为另一个将动态识别的 div。
这里我不想通过指定标识的div元素再次创建Panel对象,我需要利用现有的panel对象,需要在标识的div存在的地方显示面板。
谁能帮我解决这个问题。
谢谢
文卡特
【问题讨论】:
标签:
javascript
extjs
updatepanel
rendering
panel
【解决方案1】:
如果您将面板创建为自定义扩展,并使用它自己的命名空间:
Ext.namespace('My.Panel');
My.Panel.SomePanel = Ext.extends(Ext.Panel,{
// Your custom panel configuration here
itemId:'myPanel'
});
Ext.reg('mypanel',My.Panel.SomePanel);
然后,您可以在需要时创建面板,甚至可以通过您注册的 xtype 来引用它:
var myWin = new Ext.Window({
title:'Some Title',
height: 300,
width: 300,
items:[{
xtype: 'mypanel',
data: someData
}]
});
var myTabs = new Ext.TabPanel({
title: 'Some Tab Panel',
activeTab: 0,
items:[{
xtype: 'mypanel',
title: 'SomePanel number 1'
}]
});