3

我有一个自定义对话框,它使用以下调用打开一个 ASPX 页面:

Sitecore.Context.ClientPage.ClientResponse.ShowModalDialog("/path/to/my/dialog.aspx");

在 Sitecore 7.1 之前,我已经能够关闭模式对话框并使用以下 JavaScript 片段传回一个值:

if (window.opener) {
  window.opener.top.returnValue = 'success';
}
window.returnValue = 'success';
window.close();

由于我的对话框使用 ASPX 页面,因此我无法使用Sitecore.Context.ClientPage.ClientResponse.CloseWindow();来关闭它(因为不存在 Sheer UI 框架)。不幸的是,我的自定义对话框非常复杂,而且我的项目时间线没有给我时间将其重写为 SPEAK UI 应用程序。

话虽如此,由于新的 jQuery 驱动的模式对话框,上述 JavaScript 解决方法已停止在 Sitecore 7.1 中工作。我想知道是否有人知道如何关闭 Sitecore 7.1 模式对话框并传回一个值?

4

1 回答 1

7

你可以打电话window.top.dialogClose();

这应该够了吧。

于 2014-01-28T22:37:40.430 回答