Je dois récupérer les paramètres d'URL (que je peux faire avec succès) et en fonction d'un paramètre, décider quel iframe src remplir, puis avec d'autres paramètres remplir automatiquement le formulaire Cela est créé via le formulaire src. Le premier problème est que je ne peux pas empêcher la page d'entrer dans une boucle infinie. Il charge correctement et affiche le bon iframe, mais la boucle infinie (load) doit s'arrêter. Deuxièmement, je ne peux pas obtenir les autres paramètres pour remplir automatiquement les valeurs d'entrée.Comment charger dynamiquement une source iFrame et remplir automatiquement des formulaires d'entrée avec Javascript
Voici le code. J'espère que tu peux aider. Voici le code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2000/REC- xhtml1-200000126/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<!-- Keep your jQuery up to date -->
<script type="text/javascript">
var urlParams;
(window.onpopstate = function() {
var match,
pl = /\+/g, // Regex for replacing addition symbol with a space
search = /([^&=]+)=?([^&]*)/g,
decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); },
query = window.location.search.substring(1);
urlParams = {};
while (match = search.exec(query))
urlParams[decode(match[1])] = decode(match[2]);
})();
var test = urlParams["entry"];
var test2 = urlParams["test"];
function iframedirect(){
if (test=="sldk") {
document.getElementById("frame1").src = "http://na-sj09.marketo.com/lp/cochlearsandbox/UpgradeInterest_IFrameLandingPage.html";
var f1 = frames['frame1'].document.forms['mktForm_1108'];
f1.elements['FirstName'].value = test;
}else{
document.getElementById("frame1").src = "http://na-sj09.marketo.com/lp/cochlearsandbox/CAM-UpgradeInterestForm_iFrameLandingPage2ndOption.html";
}
}
</script>
</head>
<body id="bodyId" class="mktEditable" align="center" >
<iframe id="frame1" src="" onload="iframedirect()" height="750px" width="620px" scrolling="no" frameborder="0" marginwidth="0"></iframe>
</body>
</html>
La mise en œuvre cela n'a pas empêché la boucle infinie. Merci pour l'idée. Vous aviez raison de me rendre compte que j'avais une charge d'auto-référence. Je devais l'enlever, plutôt que d'essayer de l'arrêter. Merci d'avoir réellement mis votre suggestion au code qui peut être facilement copié et collé. Donc peu de gens font ça. Les novices en profitent vraiment. J'ai résolu le problème et je vais le poster maintenant. –
Ravi de vous entendre résolu le problème! – Gnagy