我是Jquery Dialogs和Iframes的新手,我只想询问当对话模式关闭时是否可以刷新静态Iframe。
继承静态iframe:
<iframe id="frameUserInfo" src="/User/UserInfo" style="border: none; width: 100%;
min-height: 220px;"></iframe>
</div>
这是我的Jquery对话
$("#dialogAddPhone").dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 700,
height: 700,
position: ['center', 40],
close: function (event, ui) {
$('#dialogAddPhone').attr('src', '');
}
});
我尝试添加此$('#frameUserInfo').reload(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>
然后,这是User/UserInfo
loadIframe('myIframeAddPhone', href);
parent.$("#dialogAddPhone").dialog("open");
return false;
然后在关闭对话框后,它应该仅刷新frameUserInfo
谢谢! :)
答案 0 :(得分:1)
您可以使用以下内容:
第一种方法:
$("#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
属性。所以你应该采用第二种方法。
这是使用第二种方法的Demo。
答案 1 :(得分:0)
试试这个:
$( '#frameUserInfo' ).attr( 'src', function ( i, val ) { return val; });