Html Extjs将div添加到窗口中
我想通过点击一个按钮来添加一个新的div标签,但它不起作用。 我有一个来自extjs的web桌面和两个模块。一个类似下面代码的窗口,带有1个div[20,20]。以及第二个窗口,该窗口具有按钮和处理程序,用于在第一个窗口中添加新的div标记。但它不起作用Html Extjs将div添加到窗口中,html,extjs,desktop,add,Html,Extjs,Desktop,Add,我想通过点击一个按钮来添加一个新的div标签,但它不起作用。 我有一个来自extjs的web桌面和两个模块。一个类似下面代码的窗口,带有1个div[20,20]。以及第二个窗口,该窗口具有按钮和处理程序,用于在第一个窗口中添加新的div标记。但它不起作用 win = desktop.createWindow({ id: 'firstwindow', title: 'firstwindow', widt
win = desktop.createWindow({
id: 'firstwindow',
title: 'firstwindow',
width: 421,
height: 391,
divs: [{
x: 20,
y: 20
}],
等等
这里是通过单击第二个窗口中的按钮在第一个窗口中添加div的代码
handler: function(){
if (Ext.getCmp('firstwindow')) {
Ext.getCmp('firstwindow').add({
divs: [{
x: 20,
y: 40
}]
})
Ext.getCmp('firstwindow').render();
console.log(Ext.getCmp('firstwindow'));
}
}
提前感谢,,
干杯
Thomas我认为您必须使用Ext.getCmp('firstwindow').doLayout()而不是Ext.getCmp('firstwindow')。render()您使用的add方法用于将ExtJs组件添加到容器中(在您的示例中是其窗口)。无法使用add方法创建DIV标记 在ExtJS中,您可以创建一个组件并将其添加到容器中。如果需要修改DOM,则必须更新el属性。默认情况下,在ExtJS中,它是一个DIV标记。您可以通过autoEl配置覆盖此设置 一种可能的解决办法:
现在,如果您想重复创建一个DIV标记,其中包含一些内容并动态呈现,那么可以借助DataView。使用DIV及其子项创建模板。。将数据加载到存储中,并最终呈现它们或在窗口中更新DataView。可能是您应该解释如何处理div。。