Insérer une valeur dans un formulaire depuis une autre fenêtre IE

Insérer une valeur dans un formulaire depuis une autre fenêtre IE - HTML/CSS - Programmation

Marsh Posté le 15-09-2002 à 23:14:03    

Je m'explique:
 
En cliquant sur un lien, une fenêtre popup s'ouvre, avec dedans plusieurs possibilités. Quand on clique sur l'une de ses possibilités, une valeur correspondante s'inscrit dans un champ texte du formulaire d'origine...
 
Par ex:
Dans le popup, il y a Fromage. Quand on clique sur Fromage, il y a la valeur correspondante à fromage, qui apparaît dans un champ texte d'un formulaire de la page d'origine du popup...
 
J'espère avoir été clair...
 
Merci d'avance

Reply

Marsh Posté le 15-09-2002 à 23:14:03   

Reply

Marsh Posté le 16-09-2002 à 21:12:26    

up...

Reply

Marsh Posté le 17-09-2002 à 00:33:06    

Regarde du côté de window.opener tu accèdes aux propriétés de la fenêtre appelante (donc à ses éléments, donc à ton formulaire)

Reply

Marsh Posté le 17-09-2002 à 17:17:11    

Oui, je pense qu'avec un truc du genre:
window.opener.[nom_du_formulaire].[nom_du_champ].value="truc"
 
Tu devrais pouvoir faire quelque chose

Reply

Marsh Posté le 17-09-2002 à 20:11:07    

yep comme dit furaxx, voilà un exemple de code que je t'ai fait rapidos :
 
 
2 fichiers : index.htm et fenetreChoix.htm
 
 
index.htm :
 
<form name="formulaire">
 
Pays : <input type="text" name="pays">
 
<input type="button" onclick="window.open('fenetreChoix.htm', '', 'height=100,width=200';);" value="Choix">
 
</form>
 
fenetreChoix.htm :
 
<script language="javascript" type="text/javascript">
<!--
 
function remplirPays(nom_pays)
{
 
   if (nom_pays)
   {
      opener.document.forms['formulaire'].pays.value = nom_pays;
      opener.focus();
      window.close();
   }
 
}
 
//-->
</script>
 
<form name="choix">
 
Vous en habitez :
 
<select name="nom_pays"
 onChange="remplirPays(this.form.nom_pays.options
 [this.form.nom_pays.selectedIndex].value);">
 
<option value=""></option>
<option value="France">en France</option>
<option value="Japon">au Japon</option>
 
</select>
 
</form>
 
 
bon courage.
 

Reply

Marsh Posté le 18-09-2002 à 16:20:36    

ok, merci beaucoup

Reply

Marsh Posté le 18-09-2002 à 18:07:06    

Bon, ben ça marche pas...
 
Pour ouvrir la fenêtre:

Code :
  1. <a href="#" onClick="MM_openBrWindow('smilies.php','test','scrollbars=yes,width=280,height=300')">Les autres smilies</A>


 
La fenêtre s'ouvre bien...
 
Le champ texte qui doit recevoir la valeur s'appelle message, dans le formulaire prvmess...
 
Voici le code de la fenêtre qui s'ouvre:
 

Code :
  1. <html>
  2. <head>
  3. <title>Les autres smilies</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  5. <script language="javascript" type="text/javascript">
  6. <!--
  7. function remplirMessage(code_smilie)
  8. {
  9.   if (code_smilie)
  10.   {
  11.      window.opener.document.prvmess.message.value = code_smilie;
  12.      window.opener.focus();
  13.      window.close();
  14.   }
  15. }
  16. //-->  
  17. </script>
  18. </head>
  19. <body bgcolor="#FFFFFF" text="#000000">
  20. <A href="#" onClick="remplirMessage(:bounce:);"><IMG src="images/membres/smilies/bounce.gif" border="0" alt=":bounce:" hspace="2" vspace="2"></A>
  21. <A href="#" onClick="remplirMessage(:fuck:);"><IMG src="images/membres/smilies/fuck.gif" border="0" alt=":fuck:" hspace="2" vspace="2"></A>
  22. <A href="#" onClick="remplirMessage(:gun:);"><IMG src="images/membres/smilies/gun.gif" border="0" alt=":gun:" hspace="2" vspace="2"></A>
  23. <A href="#" onClick="remplirMessage(:salut:);"><IMG src="images/membres/smilies/salut.gif" border="0" alt=":salut:" hspace="2" vspace="2"></A>
  24. <A href="#" onClick="remplirMessage(:spookie:);"><IMG src="images/membres/smilies/spookie.gif" border="0" alt=":spookie:" hspace="2" vspace="2"></A>
  25. <br></body>
  26. </html>


 
Quand je clique sur les smilies, le code (ex: : bounce :) ne s'affiche pas dans le champ texte message...


Message édité par haazheel le 18-09-2002 à 18:39:35
Reply

Marsh Posté le 18-09-2002 à 19:22:23    

hé il faut respecter mon code !


Message édité par zluman le 18-09-2002 à 19:24:53
Reply

Marsh Posté le 18-09-2002 à 19:32:44    

Oui logique que ça ne marche pas, tu as oublié les '' délimiteurs de ta chaine argument de la fonction remplirMessage  => remplirMessage(':bounce:';)

Reply

Marsh Posté le 18-09-2002 à 20:32:38    

zluman a écrit a écrit :

Oui logique que ça ne marche pas, tu as oublié les '' délimiteurs de ta chaine argument de la fonction remplirMessage  => remplirMessage(':bounce:';)
 




 
Bien vu, ça fonctionne maintenant...
 
Pour info, le code:
 

Code :
  1. <html>
  2. <head>
  3. <title>Les autres smilies</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  5. <script language="javascript" type="text/javascript">
  6. <!--
  7. function remplirMessage(code_smilie)
  8. {
  9.   if (code_smilie)
  10.   {
  11.      opener.document.forms['prvmess'].message.value += code_smilie;
  12.      window.opener.focus();
  13.      window.close();
  14.   }
  15. }
  16. //-->  
  17. </script>
  18. </head>
  19. <body bgcolor="#FFFFFF" text="#000000">
  20. <A href="#" onClick="remplirMessage(':bounce:');"><IMG src="images/membres/smilies/bounce.gif" border="0" alt=":bounce:" hspace="2" vspace="2"></A>
  21. <A href="#" onClick="remplirMessage(':fuck:');"><IMG src="images/membres/smilies/fuck.gif" border="0" alt=":fuck:" hspace="2" vspace="2"></A>
  22. <A href="#" onClick="remplirMessage(':gun:');"><IMG src="images/membres/smilies/gun.gif" border="0" alt=":gun:" hspace="2" vspace="2"></A>
  23. <A href="#" onClick="remplirMessage(':salut:');"><IMG src="images/membres/smilies/salut.gif" border="0" alt=":salut:" hspace="2" vspace="2"></A>
  24. <A href="#" onClick="remplirMessage(':spookie:');"><IMG src="images/membres/smilies/spookie.gif" border="0" alt=":spookie:" hspace="2" vspace="2"></A>
  25. </body>
  26. </html>

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed