如何从父html通过iframe传递参数?

Jav*_*ner 26 html javascript iframe

我有一个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"); 
}
Run Code Online (Sandbox Code Playgroud)

Ozg*_*Bar 27

在主页面上只需传递如下参数

function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html?param1=value1&param2=value2"); 
} 
Run Code Online (Sandbox Code Playgroud)

在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>
Run Code Online (Sandbox Code Playgroud)

然后你可以像这样获取所需参数的值

var param1 = getParamValue('param1');
Run Code Online (Sandbox Code Playgroud)

  • 您可能需要在“return pArr[1]”之前添加“pArr[1] =decodeURI(pArr[1])” (2认同)

小智 5

如果您对iframe沙箱有更多控制权,则可以尝试postMessage API与您要触发的事件上的消息进行通信。