dojo 从声明性AccordionContainer中删除子内容窗格

yuvru6vn  于 2022-12-08  发布在  Dojo
关注(0)|答案(1)|浏览(169)

我已经用声明性的ContentPaneAccordionContainer创建了dojo布局。
我无法使用javascript从AccordionContainer中删除子项。
下面是我的示例代码:

<div id="main" data-dojo-type="dijit/layout/BorderContainer" data-dojo-props="design:'headline'">           
            <div data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'left'" id="leftPane">
                <div data-dojo-type="dijit/layout/ContentPane">
                    <div data-dojo-type="dijit/layout/AccordionContainer" id="accContainer">
                        <div  data-dojo-type="dijit/layout/ContentPane" data-dojo-props="title:'Boundary'" >                            
                            ...
                        </div>                        
                        <div data-dojo-type="dijit/layout/ContentPane" id="bufferPane" data-dojo-props="title:'Works Boundary: Buffer'">
                            ...
                        </div> 
                    </div>
                </div>
                <hr>                
                <div data-dojo-type="dijit/layout/ContentPane" >
                    Area In :
                    <div id="area"></div>
                </div>
            </div>
    </div>

dom.byId("accContainer")在使用.getChildren()函数获取子级时引发异常。
注册表和dijit by id返回空值。
是否有任何方法可以通过编程方式在AccordionContainer中添加/删除子节点?例如,在我的例子中是bufferPane。
任何帮助都将不胜感激。
此致,Prashant

mfuanj7w

mfuanj7w1#

您必须使用DojoWidgetRegistry内置方法,
一个月一个月,一个月一个月...
因此,如果要在可折叠面板旁边添加内容窗格,请使用addChild accoredionPane方法
此外,要删除父小部件中的小部件,最好使用dijit/registryregistry.findWidgets(Parentwdiget)获取所有包含的小部件,然后n删除它们,或者应用过滤器按id搜索....
请参阅以下片段:
第一个

相关问题