2

我有一个 jQuery 对话框,打开时将 iFrame 添加到对话框中。如何在单击按钮(iFrame 的 HTML 中存在的按钮)时关闭此对话框。

我尝试使用 iFrame 获取内容,contents()但我得到的是[object object]

很多人已经提到我们不能访问跨域的内容,这里根本不涉及其他域。

4

4 回答 4

2
window.parent.$("#dialogDiv").dialog('close');

这样就解决问题了。。

于 2014-01-20T07:04:31.257 回答
1

这里有两种方法。

从 iframe 本身内部:

$('button#closeDialog').click(function(e){
    e.preventDefault();
    $('#dialog', top.document).dialog('close');
}

从您的基本页面内部:

$('iframe').contents().find('button#closeDialog').click(function(e){
    e.preventDefault();
    $('#dialog).dialog('close');
}
于 2013-04-04T07:50:47.527 回答
0

试试这个

$("#yourIframeId").contents().find("#buttonId").click(function(){
    $("#dialogId" ).dialog( "close" );
});

或 on 代表

$(document).on('click',"#buttonId",function(){
    $("#dialogId" ).dialog( "close" );
});
于 2013-04-04T07:49:15.613 回答
-2

这是一个简单且经过测试的解决方案:

window.parent.jQuery('#popId').hide();
于 2014-05-11T17:19:39.423 回答