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-渲染对象';布局形式';DOM中的动态_Dom_Extjs - Fatal编程技术网

ExtJs-渲染对象';布局形式';DOM中的动态

ExtJs-渲染对象';布局形式';DOM中的动态,dom,extjs,Dom,Extjs,我有一个功能: var my_form = function() { return { layout:'form', items: [ { xtype:'textfield', fieldLabel: "Name", maxLength: 255 } ] }; } 我想动态渲染它。这不起作

我有一个功能:

var my_form = function() {
    return {
        layout:'form',
        items: [
            {
                xtype:'textfield',
                fieldLabel: "Name",
                maxLength: 255
            }
        ]
    };
}
我想动态渲染它。这不起作用:

var t = Ext.DomHelper.createTemplate(my_form()).compile();
Ext.DomHelper.insertBefore('my_div', t);
如何做到这一点


谢谢:)

我发现它可以这样工作:首先通过DomHelper创建一个div,然后使用“renderTo”配置选项创建FormPanel

Ext.onReady(function(){

    var formdiv = Ext.DomHelper.insertBefore('my_div', {tag: 'div', id: 'form_div' } );

    var my_form = function() {
        return {
            layout:'form',
            renderTo:'form_div',
            items: [
                {
                    xtype:'textfield',
                    fieldLabel: "Name",
                    maxLength: 255
                }
            ]
        };
    }

    var t = new Ext.FormPanel(my_form());

});

您使用createTemplate()是否有特定原因?如果没有,您可以将第一行更改为var t=new Ext.Form(my_Form())@保罗,我想你应该把它当作回答而不是评论不,没有具体的原因。我用
新的外部面板()
进行了测试(新的外部表单不起作用)。但是insertBefore display
“+this.header.dom.innerHTML+”;if(this.iconCls){this.setIconClass(this.iconCls);}}}}if(this.floating){this.makeFloating(this.floating);}if(this.collapse&&this.titleCollapse&&this.header){this.mon(this.header,'click',this.toggleCollapse,this);this.header.setStyle('cursor,'pointer');}if(ts){this.addTool.apply){(这个,t……
,没有它的内容…@Paolo@barbacan它应该是Ext.FormPanel(我的表单)而不是Ext.form(我的表单)。这是同样的问题:insertBefore方法不显示我的表单的内容。创建FormPanel是个好主意,但是现在,如何显示这个FormPanel?使用show()…您需要参考API文档!谢谢Paolo.show()显示我的表单,但它附在标记体上,而不是“my_div”…我在密集的API文档中迷失了方向!