我有一个 jQuery 对话框,打开时将 iFrame 添加到对话框中。如何在单击按钮(iFrame 的 HTML 中存在的按钮)时关闭此对话框。
我尝试使用 iFrame 获取内容,contents()
但我得到的是[object object]
很多人已经提到我们不能访问跨域的内容,这里根本不涉及其他域。
我有一个 jQuery 对话框,打开时将 iFrame 添加到对话框中。如何在单击按钮(iFrame 的 HTML 中存在的按钮)时关闭此对话框。
我尝试使用 iFrame 获取内容,contents()
但我得到的是[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');
}
试试这个
$("#yourIframeId").contents().find("#buttonId").click(function(){
$("#dialogId" ).dialog( "close" );
});
或 on 代表
$(document).on('click',"#buttonId",function(){
$("#dialogId" ).dialog( "close" );
});
这是一个简单且经过测试的解决方案:
window.parent.jQuery('#popId').hide();