我尝试从网站URL中获取参数,并传递给iframe URL.The网站URL,如下所示:
www.example.com/en/open-account/Redirect?linkID=demo1064&referral_id=0010962
上面的网址有两个参数(linkID和referral_id),.Maybe有更多的参数(2-8个参数)。它看起来像是iframe URL:
<iframe frameborder="0" scrolling="no" class="frameboxlive" src="https://login.example.com/demo_signupiframe=1&linkID=demo1064=&referral_id=0010962=&ref= www.example.com/en/open-account/Redirect?linkID=demo1064&referral_id=0010962&clang=en" width="700" height="800" align="center"></iframe>
必须自动生成iframe URL,并具有以下部分:
有什么建议用Javascript来做吗?提前谢谢。
发布于 2017-12-26 10:31:57
试试这个:
<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>
发布于 2017-12-26 10:39:35
您可以使用下面的代码片段从URL获取所有查询字符串、操作并将其传递给iframe url。
如果您想静态地检索对象,请使用这样的方法
var linkID = getUrlVars()"linkID";var referral_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组件进行编码。
发布于 2020-11-19 05:33:46
我也有类似的问题,只需要从URL中提取查询字符串vars .
父母:
example.com?&booking=completed&bookingnumber=12345等..。
in iframe:
myapp.com <<缺失参数..。
@Faly的回答帮助了我,但我简化了它..。截至2020年11月,它仍然跨域,在所有浏览器中都能工作。
在父页面example.com中,要嵌入iframe:
<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
https://stackoverflow.com/questions/47976917
复制相似问题