J'ai une page html dans laquelle je mets la src pour un iframe par programme. Comment puis-je passer des paramètres via l'iframe src et les obtenir dans le code HTML de l'enfant?
En dessous de mon code:
<iframe id="myIframe" src="" height="250px" width="100%" scrolling="yes" frameborder="0"></iframe>
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html");
}
Sur la page principale, passez simplement les paramètres comme suit
function myFunction(){
$('#myIframe').attr('src', "myIframeRequest.html?param1=value1¶m2=value2");
}
en iframe
Vous pouvez utiliser un script pour obtenir la valeur de paramètre souhaitée à partir des paramètres transmis à la page.
<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>
Ensuite, vous pouvez récupérer la valeur du paramètre souhaité comme ceci
var param1 = getParamValue('param1');
Si vous avez un peu plus de contrôle sur votre sandbox iframe, vous pouvez essayer l'API postMessage pour communiquer avec un message sur les événements que vous souhaitez déclencher.
vous devriez faire une page serveride comme (myIframeRequest.php) php/jsp et obtenir la valeur de paramètre dans cette page s'il s'agit d'une page html puis analyser le window.location.href via javascript et trouver la requête/param