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 :

Aide formulaire : choix avec apparition textaera + récup des données


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1
    Par défaut Aide formulaire : choix avec apparition textaera + récup des données
    Bonjour à tous!

    Newbie dans le domaine, j'essaie de "confectionner" un formulaire HTML...
    Premier problème rencontré, je voudrais y mettre une question avec réponse en bouton "oui/non", et en fonction de la réponse, une zone texte s'afficherait ou pas. Par exemple, si je clique sur "oui", j'ai ma fenêtre qui apparaît.
    Pour l'instant j'ai pondu ce truc en fouinant à droite à gauche :

    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
    28
    29
    30
    31
    32
    33
    34
    <html>
    <head>
    <script type="text/javascript">
    function met(btn,champ1,champ2)
    {
     if (btn.checked)
       {
        document.getElementById(champ1).style.display="inline";
     document.getElementById(champ2).style.display="none";
       }
     else {
        document.getElementById(champ1).style.display="none";
     document.getElementById(champ2).style.display="display";
       }
    }
    </script>
    </head>
     
    <body>
    <div id="Rubrik01" align="left">
    <br>
    Test : 
     
    <br>
    <input type="radio" name="tem1" value="oui" id="chkb_10"
      onclick="met(this,'texte_10','texte_20');" >&nbsp;<label for="chkb_10">oui</label>
    <input type="text" size="35"
      style="display:none"
      id="texte_10" value="zone de texte : ">
     
    <br>
    <input type="radio" id="chkb_20" value="non" name="tem1" checked
      onclick="met(this,'texte_20','texte_10');" >&nbsp;<label for="chkb_20">non</label>
    <br>

    Si certain(e)s ont la patience de tester, vous verrez que le bouton "non" est coché par défaut... il s'agit en fait d'une petite feinte car je n'arrive pas à faire disparaître la zone texte une fois le bouton "non" coché!
    En gros, si je clique sur "oui" et que je m'aperçois que je me suis trompé et que je veux revenir sur "non", la zone texte du "oui" reste à l'écran...

    Donc première question : quelqu'un a t'il une idée pour faire disparaître ce champ texte pour le "oui" en cas d'erreur (non (défaut) --> oui --> non)??

    Et deuxième question, quelqu'un sait-il comment faire pour récupérer le texte de la zone texte apparue quand on clique sur "oui"??

    Merci d'avance pour les courageux qui auront été jusqu'au bout!
    Et encore plus à ceux qui voudront bien se casser la tête pour me répondre

    Merci et bon après midi!

    kikill

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Salut et Bienvenue sur developpez.
    1- l'élément avec l'id texte_20 n'existe pas
    2- utilise display="inline" à la place de display="display"
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
            <html>
    <head>
    <script type="text/javascript">
    function met(btn,champ1,champ2)
    {
     if (btn.checked)
       {
        document.getElementById(champ1).style.display="inline";
     document.getElementById(champ2).style.display="none";
    alert(document.getElementById(champ1).value)//récupère et afiche la valeur de champ1
       }
     else {
        document.getElementById(champ1).style.display="none";
     document.getElementById(champ2).style.display="inline";
       }
    }
    </script>
    </head>
     
    <body>
    <div id="Rubrik01" align="left">
    <br>
    Test : 
     
    <br>
    <input type="radio" name="tem1" value="oui" id="chkb_10"
      onclick="met(this,'texte_10','texte_20');" >&nbsp;<label for="chkb_10">oui</label>
    <input type="text" size="35"
      style="display:none"
      id="texte_10" value="zone de texte : ">
     
    <br>
    <input type="radio" id="chkb_20" value="non" name="tem1" checked
      onclick="met(this,'texte_20','texte_10');" >&nbsp;<label for="chkb_20">non</label>
      <input type="text" size="35"
      style="display:none"
      id="texte_20" value="zone de texte : ">
    <br>
    </body>
    </html>

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/12/2009, 13h39
  2. Formulaire GET avec action contenant déjà des paramètres
    Par vichenze dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 27/06/2008, 11h40
  3. Réponses: 2
    Dernier message: 14/10/2006, 23h31
  4. [mysql 5.0 sous MAC OS x.4] pb de récup des données
    Par grospaulo dans le forum Administration
    Réponses: 1
    Dernier message: 25/01/2006, 09h29
  5. Récup des données d'un select (cf exemple dans la faq)
    Par j0k3r_n0ir dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 28/02/2005, 18h36

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