2010-06-02 82 views
0

TLDR我想将一些动态内容添加到Ext-JS窗口/弹出窗口中。ExtJS窗口中的动态内容


目前我已经尝试了这个分配内容到DIV和拉那的innerHTML div的,如:

   new Ext.Window({ 
       height: 50, 
       width: 160, 
       x: 0, 
       y: 30, 
       layout: "fit", 
       html: document.getElementById('output').innerHTML; 
      }).show(); 

我使用jQuery &的getJSON获得动态数据。

但是这根本就什么都不做。
有没有人做过类似的事情?

我可以给窗口的HTML一个ID并使用它像一个元素?

+0

此代码应该工作。 – 2010-06-02 12:50:20

+0

我上面的答案不是。它只是完全打破了窗口。 – Sphvn 2010-06-03 00:28:57

回答

1

原始代码应能正常工作。 “完全打破”对于描述问题并不是很有用。

但是,如果您尝试将复杂的标记加载到窗口中,则使用contentEl方法可能会更好。

请注意,因为您没有任何子项目,所以窗口中的'fit'是多余的。

+0

无论如何,我的示例中没有任何子项:P。它不允许我在示例中放置上面的JavaScript语句。它崩溃和灼伤没有太多的错误。 – Sphvn 2010-06-04 01:28:54

1

您可以使用contentEl方法将div的内容注册到窗口或任何其他面板等。

contentEl: 'ElementID' 

例子:

   new Ext.Window({ 
        title: 'Measurement', 
        height: 50, 
        width: 160, 
        resizable: false, 
        closeAction: "hide", 
        x: 0, 
        y: 30, 
        layout: "fit", 
        contentEl: 'output' 
       }).show(); 
0

要获取更详细的错误信息,请使用Ext.js的调试版本。

你的例子应该工作,除非 document.getElementById('output')。当你试图显示你的窗口,(你正在做的立即创建)时,innerHTML不存在。