取消注册Dojo小部件

时间:2012-11-12 15:58:22

标签: javascript dojo

如何销毁DIV中包含的所有小部件?如果封闭元素是一个dojo小部件(例如表单),则附加的代码可以正常工作 重申一下,如何取消注册所有小部件都包含在DOM元素(如DIV)中。

require(["dojo/ready"], function(ready) {
        ready(function(){
         var parentNode = dijit.byId('enclosingDivId');
            if (parentNode) {
               parentNode.destroyRecursive(true);
            }
        });
    })

1 个答案:

答案 0 :(得分:1)

基于dijit/registry文档,我建议你做这样的事情:

require(["dojo/_base/array", "dijit/registry"], function(arrayUtil, registry){
    var formWidgets = registry.findWidgets(someNode);
    formWidgets.forEach(function (widget) {
        widget.destroyRecursive();
    }); 
});