使用iframe如何通過url傳參把資料從一個頁面傳到另一個頁面(contentWindow)
阿新 • • 發佈:2019-02-03
最近做的專案使用Iframe,使用起來感覺挺方便的。但是唯一感覺不開森的就是使用Iframe後,頁面的位址列的是不改變的哦,那麼我們如何通過url將資料從一個頁面傳到另一個頁面?
<div style="background-color: transparent;height: 580px;width: 1050px">
<iframe name="studyFrame" allowtransparency="true" src="" width="100%" height="100%"
id="studyManageIframe" style="border: none;" >
</iframe>
</div>
記住我的iframe的id值哦——studyManageIframe
下面這段程式碼是獲取iframe 中巢狀的頁面的url引數的。
function GetIframeQueryString(name) {
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
/*var iframeSrc=window.parent.document.getElementById("studyManageIframe").contentWindow.location.href ;*/
var r =window.parent.document.getElementById("studyManageIframe").contentWindow.location.search.substr(1).match(reg);
if (r != null) {
return decodeURI(r[2]);
}
return null;
}
分解來說就是,
var iframeSrc=window.parent.document.getElementById("studyManageIframe").contentWindow .location.href ;`
可以把這個console一下,會發現這就是我們巢狀的在iframe中的那個頁面的src哦,當然我們的引數也會一起出現的。
然後用上正則,哈哈,引數的值就得到了啊!
通過contentWindow 這裡,返回的是iframe的window物件。