Javascript dijit对话框是否可以在创建它的模块外部关闭

Javascript dijit对话框是否可以在创建它的模块外部关闭,javascript,dojo,Javascript,Dojo,我有一个应用程序,它的主页面在用户单击dijit树上的节点时调用不同的工具。dijit树位于主要内容窗格中,当用户单击工具节点时,将使用以下工具在中心内容窗格中创建一个模块: 主页: 工具 标票 找票 当用户单击标记票证链接时,将创建标记票证模块,并且 在markticket模块中创建了另一个模块,它是一个非模态dijit对话框 当用户单击Find Ticket链接时,Mark Ticket模块被销毁,Find Ticket模块被创建。 如果非模态对话框保持打开状态,当用户单击“查找票证”链接时

我有一个应用程序,它的主页面在用户单击dijit树上的节点时调用不同的工具。dijit树位于主要内容窗格中,当用户单击工具节点时,将使用以下工具在中心内容窗格中创建一个模块:

主页: 工具 标票 找票

当用户单击标记票证链接时,将创建标记票证模块,并且 在markticket模块中创建了另一个模块,它是一个非模态dijit对话框

当用户单击Find Ticket链接时,Mark Ticket模块被销毁,Find Ticket模块被创建。 如果非模态对话框保持打开状态,当用户单击“查找票证”链接时,我是否可以关闭它

我一直试图通过对MarkTicket模块的引用来获取主页上对话框的引用:

-标记票据模块在创建链接时创建 DAMT=新的标记票证{},工具

DAMT.myDialog/该对话框在标记票据模块内创建,并在模块内以 数据dojo附着点=myDialog/

我还尝试使用以下方法引用主页上的对话框: 这是我的对话

但这也不起作用

谢谢

在调用hide后,尝试在模块的销毁方法中使用对话框的销毁方法


一些代码片段可能会提供更好的答案。

我将对话框隐藏在Mark Ticket小部件的销毁功能中。我还需要在自定义方法中调用超类destroy方法,这就是我在重新创建模块时遇到的问题:

 destroy: function () {
            MT.myDialog.hide();//MT is the dialog widget
            this.inherited(arguments);
        },

我已经设法在MarkTicket小部件的destroy方法中隐藏了对话框:destroy:function{MT.myDialog.hide;}不幸的是,在此之后,我无法重新创建任何模块