|
|
|
|
Bonsoir,
La vache bonjour l'image : la tête de mort + le sigle Radioactivité + un halo vert ! Mais qu'est-ce qu'ils peuvent bien mettre dans le désherbant ? Sinon voici un ex pour communiquer entre une fenêtre MASTER et une fenêtre SLAVE Code pour master.php : <html>
<head>
<title>Fenêtre MASTER</title>
</head>
<body>
<p>Ceci est la fenêtre MASTER</p>
<a href="slave.php" onClick="window.open('slave.php','_blank','toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0, width=500, height=450, left=200, top=200');return(false)">Ouvrir la fenêtre SLAVE</a>
</br>
</br>
<?php
if (isset($_POST["txt"])) echo "Variable txt reçue par la métode POST = ".$_POST["txt"];
if (isset($_GET["txt"])) echo "Variable txt reçue par la métode GET = ".$_GET["txt"];
?>
<form id="form1" name="form1" action="master.php" method="post">
<input type="hidden" size=30 name="txt" id="txt" value="">
</form>
</body>
</html>
Code pour slave.php : <html>
<head>
<title>Fenêtre SLAVE</title>
<style>
<!--
// -->
</style>
<script type="text/javascript">
<!--
function reloadMasterByGet()
{
elt=document.getElementById("txt");
window.opener.location.href="master.php?txt="+escape(elt.value);
}
function reloadMasterByPost()
{
elt=document.getElementById("txt");
dst=window.opener.document.getElementById("txt");
dst.value = elt.value;
window.opener.document.getElementById("form1").submit();
}
//-->
</script>
</head>
<body onload="load()">
<p>Ceci est la fenêtre SLAVE</p>
<form>
Entrez un texte à transmettre à MASTER<br/>
<input type="text" name="txt" id="txt" size="30"/>
</br>
</br>
<input type="button" onclick="reloadMasterByGet()" value="<< Actualiser MASTER (via méthode GET) >>"/>
<input type="button" onclick="reloadMasterByPost()" value="<< Actualiser MASTER (via méthode POST) >>"/>
</form>
</body>
</html>
J'ai mis un ex pour actualiser la page MASTER depuis la page SLAVE en passant un paramètre soit par la méthode GET (nota dans ce cas tu peux aussi utiliser un formulaire) soit la méthode POST Je ne ferme pas la fenêtre SLAVE : à toi d'adapter PhP |
Rebonjour,
J'ai encore quelques problèmes avec ce script !!! Comment fait-on pour transmettre une variable javascript à l'aide de ce script ? (Je m'explique un peu ...) Voilà donc, ici j'ai créer une variable qui contient des chiffres : FormidChauffeur = document.forms.FormActuel.FormChoixEmploye[m].value; Et j'aimerais introduire cette variable "FormidChauffeur" dans le script qui permet d'envoyer cette variable en mode POST. Exemple du script: elt=document.getElementById("FormidChauffeur");
dst=window.opener.document.getElementById("FormidChauffeur");
dst.value = elt.value;
SAUF que sa ne fonctionne pas, quelqu'un pourrait M'aider ??? MERCI :-) |
pour "écrire" une valeur calculée par une fonction JS dans une page html, un formulaire en l'occurrence qui sera ensuite posté je suppose ?
tu utilises document.nom_formulaire.nom_champ_a_ecrire.value=valeur_a_ecrire ou obj=document.GetElementById('id_champ_a_ecrire'); obj.value=valeur_a_ecrire C'est ce que tu veux faire ? |
Bonsoir :-)
Oui, sauf que moi la valeur voulant être posté est déjà dans le script JS .... Donc la fonction "document.GetElementById" ne sert à rien car ma valeur n'est pas dans un champ mais dans le JS. Donc dans le fond, il me faut une facon de posté ma variable JS sur la page "Master" en mode POST pi autre si possible .... :-S Merci de m'aider |
Personne pour m'aider ? :-S |
justement tu ecris ta valeur qui est dans ton script JS par la methode document.GetElementById('id_du_champ').value dans un champ caché. Ce dernier sera ainsi posté en même temps que ton formulaire. |
Le problème c'est cette valeur ne peut être calculé QUE dans le script JS. Je ne peux pas la mettre dans un champ html Hidden ...
Voici le calcul obligatoire pour trouver ma valeur de ma variable : var m=0;
length = document.forms.FormActuel.FormChoixEmploye.length;
for (i=0;i<length;i++) {
if (document.forms.FormActuel.FormChoixEmploye[i].checked==true) {
m=i;
break;
}
}
FormidChauffeur = document.forms.FormActuel.FormChoixEmploye[m].value;
Et maintenant, il faut que ma variable FormidChauffeur soit posté sur la page master comme les autres variables. Sauf que je ne peux pas utiliser document.GetElementById parce cette valeur se trouve dans le JS et non pas dans le Html ... C'est un peu dure à expliquer .. j'espère que tu as compris :-S |
La methode document.GetElementById te perùmet de lire et d'écrire dans ta page HTML depuis JS
Donc dans ta fonction JS, à la fin de ton calcul tu mets document.GetElementById('id_champ').valeur=FormidChaufeur; ou document.nom_formulaire.nom_champ.value=FormiChauffeur; Mais à qoui sert cette ligne ? FormidChauffeur=document.forms.FormActuel.FormChoixEmploye[m].value; Cela voudrai dire que tu viens lire cette variable dans un formulaire donc est ce que c'est ce formulaire qui est posté , |
Résultats pour [javascript] Raffrachir une page
Résultats pour [javascript] Raffrachir une page
Résultats pour [javascript] Raffrachir une page
Résultats pour [javascript] Raffrachir une page
Résultats pour [javascript] Raffrachir une page