簡體   English   中英

從iframe打開的彈出窗口重新加載iframe

[英]Reload iframe from pop-up window opened from iframe

問題

如何使用JS關閉彈出窗口,從iframe打開,然后重新加載iframe(不是整個頁面)

做了什么

我在iframe中打開了一個彈出窗口。 一旦這個彈出窗口到達某個頁面,我希望這個彈出窗口重新加載IFRAME,然后關閉彈出窗口。

我現在有什么

<script type="text/javascript">
window.opener.parent.location.href="'.urldecode($_GET['return_url']).'";
window.close();
</script>

現在發生了什么

彈出窗口成功關閉。 整個頁面將發送到iframe網址,而不是僅將其發送到iframe ...

編輯: 我嘗試過的:

  window.opener.location.href="'.urldecode($_GET['return_url']).'";

但是,由於iframe或頁面沒有重新加載,因此它不會超過此行,並且它不會關閉彈出窗口。 在Chrome中,窗口關閉,但iframe /頁面不會重新加載

事實證明,我訪問的頁面是一個不同的域(一個不同的域,是我們網站的一部分)。 但是,為什么這會起作用

window.opener.parent.location.href="'.urldecode($_GET['return_url']).'";

並不是

window.opener.location.href="'.urldecode($_GET['return_url']).'";

??????

我們在這里分解您的代碼:

window.opener.parent.location.href="'.urldecode($_GET['return_url']).'";
  • window表示當前彈出窗口的window對象。 目前很好。
  • .opener表示打開此窗口的窗口對象,它將是您要重新加載的iframe。 還好。
  • .parent表示iframe的父級,即整個窗口。 這是你的問題。

它應該是:

window.opener.location.href="'.urldecode($_GET['return_url']).'";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM