使用javascript停止像window.showModalDialog这样的程序流程

时间:2013-05-01 18:55:21

标签: javascript showmodaldialog

我们有一个大型企业应用程序,它使用window.showModalDialog来显示模态窗口。 我们在很多地方使用它们来显示对话框消息和子表单。现在我们想要支持所有的浏览器,因为在Chrome中,window.showModalDialog不显示模态对话框,我们正在考虑在内容上使用叠加div,然后使用更高的z-index显示带有div的顶部窗口。它工作得很漂亮,但以下是我们面临的一个大问题 - 1.大多数代码使用以下语法 -

var return = window.showModalDialog();
doSomethingWithReturnValue(return);

显示modalDialog的方法,现在代码不会执行并等待用户关闭窗口然后下一行代码doSomethingWithReturn()方法将执行,此代码用于代码中至少几个位置的代码。在javascript中有一种方法可以用以下内容替换window.showModalDialog() -

var return = showDialogWindow() // this will use overlays and div with higher index to // display the content

我们的问题是showDialogWindow()将立即返回并且所有代码都将执行而无需等待用户关闭窗口。替代方案是使用回调,但结果将是更改整个代码和更多测试以及更多错误的潜在可能性。

有没有设计showDialogWindow()的方式,只要用户没有关闭顶部div,showDialogWidnow就会等待。

谢谢, 如果您还有其他问题,请告诉我们。

0 个答案:

没有答案