jQuery如何在对话框中关闭iframe对话框?

如果我打开一个这样的对话框:

$('').dialog({ autoOpen: true, width: 800, height: 500, modal: true, resizable: true }) 

如何使用iframe关闭对话框?

好的,所以我把iframe放在页面上,显示设置为none。 我这样打开它:

 $('#externalSite').dialog({ ... }); 

在主父窗口上我有这样的函数:

 function closeIframe() { $('#externalSite').dialog('close'); return false; } 

从我在iframe中调用:

 window.parent.closeIframe(); 

简单地调用以下内容对我有用:

window.parent $( ‘#externalSite’)对话框( ‘亲密’)。

你试过这个吗?:

 $(window.parent).dialog('close'); 

我从未使用过jQuery UI对话框,因此我不确定它是否真的有效。 在我看来,您需要维护对您创建的对话框的引用,以便您可以使用它来关闭对话框。

注意,您还可以通过以下方式查找父DOM中的元素:

 $('#someParentDOMElement' , window.parent); 

当然,所有这些都假设您在iframe加载的网站与父文档位于同一个域中。 如果没有,那么iframe的文档根本无法访问父DOM。