Bonjour,
Je cherche à passer une variable dans un window.opener. Le contexte : j'ai plusieurs pages qui appellent une popup unique, et celle-ci renvoie une variable en fonction de la page appelante.
Voici ce que j'ai pour l'instant :
L'alert() affiche bien les lignes window.opener..., les valeurs sont correctes, que ce soit le javascript ou le php.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <script language="JavaScript" type="text/javascript"> var page = String(window.opener.document.title); // on récupère le nom de la page appelante //DEBUG : //alert("Page : " + page); if (page == 'New Action') { var champ = 'action_date'; alert("window.opener.document.forms[0]." + champ + ".type = \"text\";"); alert("window.opener.document.forms[0]." + champ + ".value = \"<?php echo $date; ?>\";"); } else if (page == 'IRD') { var champ = 'activiteDate'; alert("window.opener.document.forms[0]." + champ + ".type = \"text\";"); alert("window.opener.document.forms[0]." + champ + ".value = \"<?php echo $date; ?>\";"); } window.opener.focus(); </script>
Seulement je ne sais pas comment les exécuter, quelle est la syntaxe pour afficher mon champ (ici en rouge) :
window.opener.document.forms[0].champ.type = "text";
J'ai aussi essayé avec un :
document.write("window.opener.document.forms[0]." + champ + ".type = \"text\";");
mais forcément cela m'écrit la commande dans la popup.
Je suis plutôt débutant en JS, je ne sais pas si c'est possible de faire passer cette variable, et si oui comment.
Merci d'avance pour votre aide
Edit 27/10 : résolu
Il fallait mettre :
Merci à Florent d'HFR
Code : Sélectionner tout - Visualiser dans une fenêtre à part window.opener.document.getElementById(sourceI).value = "<?php echo $date; ?>";
Partager