質問

I have a custom dialog that opens an ASPX page using the following call:

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

Prior to Sitecore 7.1, I have been able to close the modal dialog and pass back a value using the following JavaScript snippet:

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

Since my dialog uses an ASPX page, I don't have the luxury of using Sitecore.Context.ClientPage.ClientResponse.CloseWindow(); to close it (since the Sheer UI frameworks are not present). Unfortunately, my custom dialog is very complex, and my project's timeline does not afford me the time to rewrite it as a SPEAK UI application.

That being said, the above JavasScript workaround has stopped working in Sitecore 7.1 as a result of the new jQuery-powered modal dialogs. I am wondering if anyone knows how to close a Sitecore 7.1 modal dialog and pass back a value?

役に立ちましたか?

解決

You can call window.top.dialogClose();

That should do the trick.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top