Javascript 对话框模式关闭时刷新Iframe
我是Jquery对话框和Iframe的新手,我只想问一下,当对话框模式关闭时,我是否可以刷新静态Iframe 这里是静态Iframe: 我尝试添加这个Javascript 对话框模式关闭时刷新Iframe,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,我是Jquery对话框和Iframe的新手,我只想问一下,当对话框模式关闭时,我是否可以刷新静态Iframe 这里是静态Iframe: 我尝试添加这个$('#frameUserInfo')。重载(true)但它不工作 只是想给你一个更好的画面,在我的父窗口中,有一个静态Iframe,其中包含一个按钮,打开$(“#dialogAddPhone”)点击事件在/User/UserInfo 这一个在父窗口中: <div id="dialogAddPhone" title="Document Up
$('#frameUserInfo')。重载(true)代码>但它不工作
只是想给你一个更好的画面,在我的父窗口中,有一个静态Iframe,其中包含一个按钮,打开$(“#dialogAddPhone”)
点击事件在/User/UserInfo
这一个在父窗口中:
<div id="dialogAddPhone" title="Document Upload" style="overflow-y: hidden;">
<iframe id="myIframeAddPhone" src="" style="border: none; width: 100%; height: 100%;">
</iframe>
</div>
然后在关闭对话框后,它应该只刷新frameUserInfo
loadIframe('myIframeAddPhone', href);
parent.$("#dialogAddPhone").dialog("open");
return false;
谢谢!:) 您可以使用以下选项:
第一种方法:
$("#dialogAddPhone").dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 700,
height: 700,
position: ['center', 40],
close: function (event, ui) {
$('#dialogAddPhone').attr('src', '');
document.getElementById('frameUserInfo').contentWindow.location.reload(); //Reloads the Iframe
}
});
第二种方法:
$("#dialogAddPhone").dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 700,
height: 700,
position: ['center', 40],
close: function (event, ui) {
$('#dialogAddPhone').attr('src', '');
document.getElementById('frameUserInfo').contentWindow.location.reload(); //Reloads the Iframe
}
});
再次设置iframe的源。它将刷新iframe
$("#dialogAddPhone").dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 700,
height: 700,
position: ['center', 40],
close: function (event, ui) {
$('#dialogAddPhone').attr('src', '');
var iframe = document.getElementById('frameUserInfo');
iframe.src = iframe.src;//Reloads the Iframe
}
});
第一种方法在Chrome中不起作用,因为没有contentWindow
属性。所以你应该使用第二种方法
下面是一个使用第二种方法进行相同操作的示例。尝试以下方法:
$( '#frameUserInfo' ).attr( 'src', function ( i, val ) { return val; });
Link:很抱歉回复太晚,但我遇到了一个错误,该错误表示uncaughttypeerror:cannotread属性'src'为null
似乎在加载iframe之前调用了该函数。你能检查一下吗?静态iframe在父窗口中。对话框关闭后,父窗口上的iframe应该刷新。您可以在Fiddle中复制此问题吗?如果没有更多的信息,很难说是什么导致了这个问题。让我们来看看。
$( '#frameUserInfo' ).attr( 'src', function ( i, val ) { return val; });