首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >嵌套Dojo.Dialog的问题

嵌套Dojo.Dialog的问题
EN

Stack Overflow用户
提问于 2011-03-16 00:43:33
回答 1查看 979关注 0票数 0

我的网页上有两个‘嵌套’或‘级联’对话框(一个对话框在上面打开另一个对话框),当我试图关闭‘顶上’对话框时遇到了问题。

下面是一个场景:

  1. 对话框1被打开
  2. 对话框2是从对话框1内的一个按钮打开的
  3. 对话框2用以下代码按一下按钮:dialog2.hid();

dialog2.destroyRecursive();

  • Problems发生了。

“‘Problems”被定义为对话框2(意味着您现在可以与对话框1进行交互)丢失的“模态”(如“对话框是模态”),而对于对话框1(意味着您可以与对话框后面的页面进行交互),则丢失了’'Problems‘,但是对话框1仍然存在。

有趣的是,当您使用右上角的X关闭对话框时,这个问题不会显示出来。是否有更好的方法来关闭对话框?

编辑:--我正在使用Dojo1.5

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-16 04:15:36

我有嵌套对话框,使用1.5不带prob。

尝试跳过destroyRecursive()调用或将其更改为destroy(),以查看是否存在任何差异。

此外,您是否在单击处理程序中调用hide()?尝试设置一个计时器,以便在处理程序返回后调用hide()。我记得在处理程序中调用hide以获得一个对话框有时会把事情搞砸。

您的意思是“丢失模式”,真正发生的是对话框隐藏了。底层是链接到类dijit.DialogUnderlay的DIV (ok,div中的div),div通常显示在dijig.Dialog.show上,在hide上隐藏。div覆盖整个屏幕区域,这就是提供“模式”的内容。

您还应该进入您最喜欢的工具(Firebug或WebKit/IE的开发工具)来检查这个底层div。它应该在您的body的末尾。看看是不是藏起来了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5319761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档