Remplir automatiquement un formulaire suivant un choix d'une liste ?

Remplir automatiquement un formulaire suivant un choix d'une liste ? - HTML/CSS - Programmation

Marsh Posté le 10-05-2006 à 14:34:59    

Salut,
 
est-il possible de choisir une option dans une liste déroulante et que suivant l'option choisie, les champs du formulaire se trouvant sur cette meme page sont mis à jour ?
 
Par exemple, j'aurai dans ma liste "papa","maman", "moi" avec en dessous un formulaire vide ayant les champs "Nom", "Prénom".
 
Si je choisis Papa dans ma liste, mon formulaire se met à jour en "Nom=Nom_Papa", "Prénom=Prénom_Papa" etc..
 
Merci de votre aide :)

Reply

Marsh Posté le 10-05-2006 à 14:34:59   

Reply

Marsh Posté le 10-05-2006 à 15:28:08    

Dans ta balise select :
onChange="javascript:this.form.monchamps.value=this.form.monmenu.value;"

Reply

Marsh Posté le 10-05-2006 à 15:31:15    

va voir sur changeliste()

Reply

Marsh Posté le 11-05-2006 à 00:13:51    

Désolé de faire mon noob mais je suis loin d'etre un pro en javascript alors si vous avez davantage d'infos n'hésitez pas.
 
Je vais chercher de mon coté avec ces différentes pistes ;)
 
Merci

Reply

Marsh Posté le 11-05-2006 à 14:29:51    

La fonction changeliste permet en effet d'agir sur le type d'évènements que je recherche mais hélas je n'arrive pas à trouver un exemple sur Internet me permettant modifier plusieurs champs d'un coup :/
 
Tous les exemples que je trouve ne modifient qu'un champ du formulaire. (exemple : http://www.espacejavascript.com/exemple.php?id=232 )
 
Vous auriez une idée pour m'orienter s'il vous plait ?
Merci

Reply

Marsh Posté le 11-05-2006 à 16:54:36    

<select name="maliste"
onChange="javascript:this.form.monchamps.value=this.form.monmenu.value;
this.form.monchamps2.value=this.form.monmenu.value;">
<option>.... </option>
</select>
 
Dès que tu changera de choix dans ta liste déroulante, les champs monchamp et monchamps 2 prendront la valeur du choix...
 
Voila, c'est pas compliqué ;)

Reply

Marsh Posté le 11-05-2006 à 16:57:19    

<select name="monmenu", pas "maliste" dsl :p Faut au moins que mon exemple soit un minimum cohérant lol

Reply

Marsh Posté le 11-05-2006 à 17:04:12    

Test ce script :
 
<html>
<body>
 
<form name="monform" action="submit.php" method="post">
 
<select name="maliste" onChange="javascript:this.form.monchamps.value=this.form.maliste.value;
                                            this.form.monchamps2.value=this.form.maliste.value;">
                                            <option name="coucou" value="coucou">coucou</option>
                                            <option name="héhé" value="héhé">héhé</option>
                                            <option name="haha" value="haha">haha</option>
                                            <option name="hoho" value="hoho">hoho</option>
                                            <option name="hihi" value="hihi">hihi</option>
</select>
 
<input name="monchamps">
 
<input name="monchamps2">
 
</form>
 
</body>
</html>

Reply

Marsh Posté le 05-06-2006 à 09:49:37    

Salut benjones,
 
désolé pour mon retour un peu tardif mais j'étais deborded au taff :D
 
Merci beaucoup pour ton code c'est quasiment ce que je veux faire mais il y a encore un probleme.
En fait ton code remplit effectivement tous les champs de mon formulaire mais de manière identiques.
 
Ce que j'aurai souhaité, c'est qu'il me remplisse chaque champs séparemment.
 
Exemple, si je choisis "Papa" dans ma liste, les champs Nom et Prénom se rempliront en fonction de cela.
 
Je continue de chercher de mon coté!
 
 
Merci !

Reply

Marsh Posté le 13-06-2006 à 10:44:05    

Code :
  1. <form name="monform" action="submit.php" method="post">
  2. <select name="maliste" onChange="javascript:this.form.monchamps.value=this.form.maliste.value;
  3.                                             this.form.monchamps2.value=this.form.maliste.value;">
  4.                                             <option name="nom1" value="coucou">coucou</option>
  5.                                             <option name="nom2" value="héhé">héhé</option>
  6.                                             <option name="nom3" value="haha">haha</option>
  7.                                             <option name="nom4" value="hoho">hoho</option>
  8.                                             <option name="nom5" value="hihi">hihi</option>
  9. </select>
  10. <input name="monchamps">
  11. <input name="monchamps2">
  12. </form>


 
Cool cet exemple, mais comment je fais si je veux mettre value->monchamps et name->monchamps2?  
 
J'ai essayé qqch comme ça:

Code :
  1. javascript:this.form.monchamps.value=this.form.maliste.value; this.form.monchamps2.value=this.form.maliste.option.name;


Mais ça marche pas....
 
Un coup de main qqn?
 
merci


Message édité par ponsfrilus le 13-06-2006 à 10:44:38
Reply

Marsh Posté le 13-06-2006 à 10:44:05   

Reply

Marsh Posté le 13-06-2006 à 13:30:49    

Code :
  1. <script type="text/javascript">
  2. function setInputText()
  3. {
  4. var mylist=document.getElementById("myList" )
  5. document.getElementById("txt" ).value=mylist.options[mylist.selectedIndex].text
  6. document.getElementById("num" ).value=mylist.options[mylist.selectedIndex].value
  7. document.getElementById("name" ).value=mylist.options[mylist.selectedIndex].label
  8. }
  9. </script>
  10. <form>
  11. Select option:
  12. <select id="myList" onchange="setInputText()">
  13.   <option value="1" label="lab1">txt1</option>
  14.   <option value="2" label="lab2">txt2</option>
  15.   <option value="3" label="lab3">txt3</option>
  16. </select>
  17. <br />The text is: <input type="text" id="txt" size="20">
  18. <br />The value is: <input type="text" id="num" size="20">
  19. <br />The name is: <input type="text" id="name" size="20">
  20. </form>

Reply

Sujets relatifs:

Leave a Replay

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