IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

remplir un formulaire qui se met dans un champ hidden


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut remplir un formulaire qui se met dans un champ hidden
    Bonjour,

    J'ai fait le formulaire suivant :
    Mais je voudrais que les données remplies par l'utilisateur se mettent dans un champ hidden automatiquement, sans que l'on clique sur un bouton "envoyer".
    Est-ce possible et si oui, comment ?


    <SCRIPT LANGUAGE="javascript">

    boutrep = new Array();
    function fradio1(bouton,reponse)
    {
    boutrep[bouton]=reponse
    }
    function fonct_form(form) {
    resultat='';

    resultat +=""+boutrep[1]+"";
    resultat +=""+boutrep[2]+"";
    resultat +=""+boutrep[3]+"";
    form.result.value = resultat;
    }
    </SCRIPT>
    <form action="" method="post" name="monform" id="monform">
    <table width="400" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td colspan="8"><span class="menu_categ">choisissez votre model</span></td>
    </tr>
    <tr>
    <td rowspan="4" width="5"></td>
    <td colspan="2"><span class="menu_categ">reference</span></td>
    <td colspan="2"><span class="menu_categ">taille</span></td>
    <td colspan="2"><span class="menu_categ">coloris</span></td>
    <td rowspan="4" width="5"></td>
    </tr>
    <tr>
    <td><span class="menu"><input type="radio" name="reference" value="6136688" onClick="fradio1(1,this.value)"></span></td>
    <td><span class="menu">6136688</span></td>
    <td><input type="radio" name="taille" value="Medium" onClick="fradio1(3,this.value)"></td>
    <td><span class="menu">Medium</span></td>
    <td><input type="radio" name="coloris" value="01" onClick="fradio1(2,this.value)"></td>
    <td><span class="menu">coloris 01</span></td>
    </tr>
    <tr>
    <td><input type="radio" name="reference" value="6136687" onClick="fradio1(1,this.value)"></td>
    <td><span class="menu">6136687</span></td>
    <td><input type="radio" name="taille" value="Large" onClick="fradio1(3,this.value)"></td>
    <td><span class="menu">Large</span></td>
    <td><input type="radio" name="coloris" value="05" onClick="fradio1(2,this.value)"></td>
    <td><span class="menu">coloris 05</span></td>
    </tr>
    <tr>
    <td colspan="6"><input onClick="fonct_form(this.form)" type=button value="Envoyer" name="button1"><input type="text" name="result"><input type="hidden" name="refcoltaille" value=""/></td>
    </tr>
    </table>
    </form>

    @bientôt et Merci par avance

  2. #2
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 868
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 868
    Par défaut
    Pour chacun des champs du formulaire, tu peux exploiter l'évènement onChange, et dans cet evenement onChange, tu peux renseigner un champ hidden sans problème, par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="libellehidden">
    <input type="text" name="libelle" onChange="this.form.libellehidden.value=this.value">

  3. #3
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut
    Merci pour cette réponse qui me permets d'avoir la même valeur dans mon champs text et dans mon champ hidden !
    Mais pour que ceux-ci aient le résultat sans que l'on clique sur le bouton envoyer, comment procède-t'on ?

    Merci d'avance

  4. #4
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 868
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 868
    Par défaut
    En fait j'ai du mal à saisir la différence, car là déjà tu ne cliques pas, et les champs hidden ont la même valeur.
    Pour valider le formulaire par contre, il faut une action utilisateur, que ce soit le bouton valider, ou par exemple la perte de focus d'un champ ( evenement onBlur )

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="unchamp" onBlur="this.form.submit();">

  5. #5
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut
    ça ne marche pas avec onBlur, le champs text, ne se rempli pas automatiquement !

  6. #6
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 868
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 868
    Par défaut
    C'est ton champ hidden que tu veux remplir automatiquement, ou ton champs text ?

    J'avoue que je comprend pas, désolé !

    Ce que j'ai compris : tu as des champs text sur ta page, et tu veux que lorsque les gens les remplissent, les champs hidden se remplissent automatiquement. C'est ce que mon premier code permet de faire. Ensuite pour _valider_ le formulaire, il faut que la personne clique sur valider, et la page de reception récupèrera toutes les informations ( mais j'avoue que je ne vois pas l'utilité de remplir un champ hidden avec l'identique d'un champ text, c'est peut-être une preuve que j'ai mal compris ton problème )

    Explique un peu plus clairement, et je pourrais t'aider

  7. #7
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut
    Donc je m'explique mieux :
    les gens ont 3 questions à repondre (des cases à cocher), je voudrais qu'ils voient leurs réponses synthétisées dans un champs text directement sans cliquer sur un bouton et je voudrais que la valeur du champs text soit identique à la valeur d'un champs hidden que je vais utiliser pour d'autres pages !
    ce champs hidden va être transmis de page en page !

  8. #8
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 868
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 868
    Par défaut
    Compris!

    Donc pour un checkbox, l'évènement à utiliser est onCheck. Il se déclenche quand on coche la case à cocher.

    Lorsque cet évènement est déclenché, tu peux appeller une fonction, qui elle se chargera de remplir ton champs text ainsi que ton champs hidden. Par exemple :

    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
    21
    22
    23
    24
    25
    26
    27
     
    <script language="JavaScript">
      function remplirChampsRéponse(thisForm) {
        // traitement du checkbox 1
        if(thisForm.checkbox1.checked == true) {
           thisForm.champcache.value="réponse1question1";
        }
        else {
           thisForm.champcache.value="réponse2question1";
        }
     
        // traitement du checkbox 2 (attention concaténation!)
        if(thisForm.checkbox2.checked == true) {
           thisForm.champcache.value+="réponse1question2"; // le + représente la concaténation
        }
        else {
           thisForm.champcache.value+="réponse2question2";
        }
        thisForm.champvisible.value=thisForm.champcache.value;
     
      }
    </script>
     
    <input type="checkbox" name="uncheckbox" value="1" onCheck="remplirChampsRéponse(this.form)">
     
    <input type="hidden" name="champcache">
    <input type="text" name="champvisible">
    Ca devrait te donner des idées

  9. #9
    Futur Membre du Club
    Inscrit en
    Mars 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 5
    Par défaut
    Yes Merci beaucoup !!!

Discussions similaires

  1. Valider un formulaire qui se trouve dans une autre zone sur la même page
    Par Globolite dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 10/10/2012, 12h34
  2. Réponses: 15
    Dernier message: 08/01/2010, 16h24
  3. [AC-2003] Date auto dans formulaire qui s'ajoute dans une table
    Par Soulq dans le forum IHM
    Réponses: 7
    Dernier message: 16/06/2009, 11h49
  4. [MySQL] Problème pour récupèrer les champs d'un formulaire qui se trouve dans un while
    Par mademoizel dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 21/03/2008, 14h59
  5. Remplir un formulaire après la selection dans un combobox
    Par creale10 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/09/2006, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo