[英]Passing parameters from website URL to iframe URL
我嘗試從網站 URL 中獲取參數並傳遞給 iframe URL。網站 URL 如下所示:
www.example.com/en/open-account/Redirect?linkID=demo1064&referral_id=0010962
嘗試這個:
<iframe frameborder="0" scrolling="no" class="frameboxlive" src=""></iframe>
<script>
var mainUrl = "https://login.example.com/demo_signupiframe=1";
var urlParams = new URLSearchParams(window.location.search);
urlParams = urlParams.toString();
var ref = document.URL;
var clang = 'clang=' + document.location.pathname.split('/')[1];
var iframeUrl = mainUrl + '&' + urlParams + '&' + urlParams + '&' + ref + '&' + clang;
document.getElementsByTagName("iframe")[0].src = iframeUrl ;
</script>
您可以使用以下代碼段從 url 獲取所有查詢字符串,進行操作並將其傳遞給 iframe URL。
如果你想使用這樣的東西靜態檢索對象
var linkID = getUrlVars()["linkID"]; varreferral_id=getUrlVars()["referral_id"];
function getUrlVars() {
var vars = [], hash;
var query_string = window.location.search;
if (query_string) {
var hashes = query_string.slice(1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars[hash[0]] = hash[1];
}
return vars;
} else {
return false;
}
}
注意:在檢索之前對 URL 組件進行編碼。
我遇到了類似的問題,只需要從 URL 中提取查詢字符串 vars ....
家長:
example.com?&booking=completed&bookingnumber=12345 等等...
在 iframe 中:
myapp.com << 缺少參數...
@Faly 的回答對我有所幫助,但我對其進行了簡化...截至 2020 年 11 月,它仍然是跨域的並且適用於所有瀏覽器
在要嵌入 iframe 的父頁面 example.com 中:
<iframe frameborder="0" class="frameboxlive" src="" height="800"></iframe>
<script>
var mainUrl = "myapp.com"; // the-page-that-you-want-to-embed
var urlParams = new URLSearchParams(window.location.search);
urlParams = urlParams.toString();
var ref = document.URL;
var clang = 'clang=' + document.location.pathname.split('/')[1];
var iframeUrl = mainUrl + '?&' + urlParams;
document.getElementsByTagName("iframe")[0].src = iframeUrl ;
</script>
就是這樣。 'mainUrl' 然后用來自父 URL 的查詢字符串填充:
myapp.com?&booking=completed&bookingnumber=12345
@SolaceBeforeDawn 工作就像一個魅力。 非常感謝!!!!!!!!!!!!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.