我有一個colorbox父頁面,其中包含一個帶有不同iFrame的TabContainer,用於對數據庫進行更改並需要更新父窗口文本框的第二個選項卡。如何將iframe中的變量傳遞給父窗口?
回答
不幸的是,你不能直接跨越一個iframe的邊界互動,這會帶來安全風險。
一種解決方法是更改iframe中的url以包含#anchor
值或?querystring
,然後從父級讀取iframe的url。
以及如何從父級讀取iframe的網址? – 2014-10-30 16:12:39
你可以在iframe的DOM對象上使用'contentWindow.location.href'。例如:'var TheLocation = document.getElementById('myframe')。contentWindow.location.href;' – 2014-10-30 16:15:37
你也可以從父級設置位置,所以這可以在兩個方向上工作。 – 2014-10-30 16:16:29
我希望你已經試過postMessage
,這是一個JavaScript API,但有瀏覽器的限制。
父母頁面可以發佈這樣的消息。
var win = document.getElementById("iframe").contentWindow
win.postMessage(
"value",
"iframe-domain"
);
而且的iframe頁面可以收聽這樣的消息。
<script>
function listener(event){
if (event.origin !== "[parent-page-domain]")
return;
// operate with event.data
}
if (window.addEventListener){
addEventListener("message", listener, false)
} else {
attachEvent("onmessage", listener)
}
</script>
源 - http://javascript.info/tutorial/cross-window-messaging-with-postmessage
- 1. 將變量傳遞給jQuery中的iframe窗口
- 2. 如何從iframe將數據傳遞給父窗口?
- 3. 將變量傳遞給Iframe
- 4. 將窗口句柄傳遞給變量
- 5. 將事件從父窗口傳遞給iframe? (Javascript)
- 6. 如何將變量傳遞給ColourBox內聯彈出窗口?
- 7. 將jquery變量傳遞給iframe src
- 8. 將javascript變量傳遞給iframe src
- 9. 從iframe的父窗口設置變量
- 10. 將值從子窗口傳遞給父窗口
- 11. JavaScript將數據從子窗口傳遞給父窗口,IE bug?
- 12. 將值從子窗口傳遞給父窗口
- 13. Node.js將變量傳遞給父函數
- 14. 如何將窗口彈出窗口的內容傳遞給父div?
- 15. 傳遞從父JavaScript變量的iframe
- 16. 從彈出窗口中的值傳遞給父窗口
- 17. 將值從子窗口傳遞給Javascript中的父窗口的問題
- 18. 將模態iframe中的值傳遞給父iframe
- 19. 如何通過iframe將javascript變量傳遞給javascript
- 20. 使用MVVMLight將變量傳遞給第二個窗口?
- 21. Chrome擴展程序:將變量傳遞給彈出窗口
- 22. 將變量從PHP頁面傳遞給jQuery模態窗口
- 23. 從父窗口和父窗口提交功能給父窗口和iframe
- 24. 如何實現父子窗口並將值從子項傳遞給父項?
- 25. csh:如何將變量從下標傳遞給父腳本
- 26. 如何將iframe src url的值傳遞給父項
- 27. 如何將變量傳遞給模塊?
- 28. 如何將變量傳遞給Buildbot?
- 29. 如何將env變量傳遞給GNOME
- 30. 如何將JQuery變量傳遞給Razor?
請將圖像切換到一些代碼,你有。 – Teemu 2014-10-30 16:05:14