我有一個頁面內的iframe,並且這個iframe包含一個提交按鈕,它將執行一些功能。如何在iframe中提交後刷新iframe父頁面?
我要的是:在iframe提交後完成,調用父頁面刷新。
我知道如何刷新:
parent.location.reload();
但我不知道該怎麼做,提交完成後。
我有一個頁面內的iframe,並且這個iframe包含一個提交按鈕,它將執行一些功能。如何在iframe中提交後刷新iframe父頁面?
我要的是:在iframe提交後完成,調用父頁面刷新。
我知道如何刷新:
parent.location.reload();
但我不知道該怎麼做,提交完成後。
我加入這行代碼後我身後所有方法完成的代碼解決了這個問題:
ScriptManager.RegisterStartupScript(this, typeof(string), "script",
"<script type=text/javascript>
parent.location.href = parent.location.href;</script>", false);
其原因我沒有寫parent.location.reload()
,寫parent.location.href = parent.location.href
是因爲我想一個新的新的一頁負荷不兩倍的數據發送到服務器。
提交表格是在I幀的文件的最後行動。提交表單後,該頁面就會「提交」並且不再處於活動狀態。如果您先刷新父級,則會丟失Iframe。您在Iframe中提交的時刻,您不能再與父母交談。
你可以做的這裏幾件事情之一:
在您的iframe上使用onload
事件處理程序。當後提交觸發,執行你的top.location.reload
...
// In parent
window.onload = function() {
document.getElementById("MY_IFRAME").onload = function() {
top.location.reload();
}
}
如果你只是想刷新父頁面的某些部分並不會需要刷新整個頁面,而這大部分的時代是因爲這種做法不會重新加載的iframe本身的情況下,你可以從子頁面調用一個JavaScript函數。
window.parent.myFunctionInParent('my argument');
,指導你的資源是在這裏:Refresh parent page partially from iframe
感謝。