当iFrame中的按钮被点击时,如何关闭jQuery对话框

How to close jQuery dialog when button inside iFrame is clicked?

本文关键字:何关闭 对话框 jQuery iFrame 按钮      更新时间:2023-09-26

我有一个jQuery对话框,当它被打开时,iFrame被添加到对话框。如何关闭这个对话框当一个按钮(按钮存在于HTML的iFrame)被点击。

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

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

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

这就解决了问题…

有两种方法。

从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');
}

try this

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

或on委托

$(document).on('click',"#buttonId",function(){
    $("#dialogId" ).dialog( "close" );
});

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

window.parent.jQuery('#popId').hide();