如何通过父html的iframe传递参数?
How to pass parameters through iframe from parent html?
我有一个 html 页面,我在其中以编程方式设置 iframe 的 src。如何通过 iframe src 传递参数并在子 html?
中获取它们
在我的代码下面:
<iframe id="myIframe" src="" height="250px" width="100%" scrolling="yes" frameborder="0"></iframe>
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html");
}
在首页简单传参如下
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html?param1=value1¶m2=value2");
}
在 iframe 中
您可以使用脚本从传递给页面的参数中获取所需的参数值。
<script>
function getParamValue(paramName)
{
var url = window.location.search.substring(1); //get rid of "?" in querystring
var qArray = url.split('&'); //get key-value pairs
for (var i = 0; i < qArray.length; i++)
{
var pArr = qArray[i].split('='); //split key and value
if (pArr[0] == paramName)
return pArr[1]; //return value
}
}
</script>
然后你可以像这样获取所需参数的值
var param1 = getParamValue('param1');
你应该制作一个像 (myIframeRequest.php) php/jsp 这样的服务器端页面,如果它是 html 页面,则获取该页面中的参数值,然后解析 window.location.href通过 javascript 并找到 query/param
如果您对 iframe 沙盒的控制稍微多一些,您可以尝试 postMessage API 就您希望触发的事件与消息进行通信。
我有一个 html 页面,我在其中以编程方式设置 iframe 的 src。如何通过 iframe src 传递参数并在子 html?
中获取它们在我的代码下面:
<iframe id="myIframe" src="" height="250px" width="100%" scrolling="yes" frameborder="0"></iframe>
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html");
}
在首页简单传参如下
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html?param1=value1¶m2=value2");
}
在 iframe 中
您可以使用脚本从传递给页面的参数中获取所需的参数值。
<script>
function getParamValue(paramName)
{
var url = window.location.search.substring(1); //get rid of "?" in querystring
var qArray = url.split('&'); //get key-value pairs
for (var i = 0; i < qArray.length; i++)
{
var pArr = qArray[i].split('='); //split key and value
if (pArr[0] == paramName)
return pArr[1]; //return value
}
}
</script>
然后你可以像这样获取所需参数的值
var param1 = getParamValue('param1');
你应该制作一个像 (myIframeRequest.php) php/jsp 这样的服务器端页面,如果它是 html 页面,则获取该页面中的参数值,然后解析 window.location.href通过 javascript 并找到 query/param
如果您对 iframe 沙盒的控制稍微多一些,您可以尝试 postMessage API 就您希望触发的事件与消息进行通信。