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 :

formulaire dynamique avec Label For


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 172
    Points : 73
    Points
    73
    Par défaut formulaire dynamique avec Label For
    Bonjour

    Je realise un formulaire dynamique avec une liste déroulante
    Il s'agit de mettre en place une liste de choix.
    Enfonction du choix des champs apparaissent ou non.
    Mon souci est que je peux faire l'apparution du champs mais le label ne fonctionne.

    Voila ce que je fait :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
                      < ! ----------  Javascript----------->
     
     
    	    function showField()
    		{
    		    if(document.formulaire.typeCourrier.value == "Telephone" )
        		{
          			document.formulaire.objetCourrier.style.visibility = "visible";
     
        		}
        		else
         			document.formulaire.objetCourrier.style.visibility = "hidden";
        	}
    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
     
        Formulaire 
     
    <label for="typeCourrier"> Type de Courrier  :</label>
    	<select name="typeCourrier" onChange="showField();"  >
    		<option value=""></option>
    		<option value="Courrier" >Courrier</option>
    		<option value="Mail"> Mail</option>
    		<option value="Telephone">Téléphonique</option>					</select> 
    	    <br>
    	    <br>
     
    <label for="mailExpedeur" style="visibility:hidden">   Adresse Mail :</label> <input type="text" name="mailExpediteur" id="mailExpediteur"  style="visibility:hidden"/>  
    <label for="objetCourrier" style="visibility:hidden">Objet courrier : </label> <input type="Text" name="objetCourrier" id="objetCourrier"  style="visibility:hidden"/>
    <label for="nomCharge" style="visibility:hidden">Nom du chargé de mission</label><input type="Text" name="nomCharge" id="nomCharge"  style="visibility:hidden"/>
    <label for="numFiche" style="visibility:hidden"> N° Fiche :</label> <input type="Text" name="numFiche" id="numFiche"  style="visibility:hidden"/>	
     
    	<br>
    	<br>
    D'après ce que j'ai compris : label for est lié à l'input avec un identity "id"
    c'est la raison pour laquelle il porte le meme nom.
    C'est pour cette raison que je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     document.formulaire.objetCourrier.style.visibility = "visible";
    Je ne vois pas comment je pourrais afficher le label .
    Je vous remercie d'avance

    Stardeus

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    il faudrait que tu donnes un ID aussi à chaque <label>.
    Tu pourras les afficher avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('id_label').style.visibility='visible';
    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 172
    Points : 73
    Points
    73
    Par défaut
    Bonjour

    Je te remercie cela fonctionne.
    Alors je voudrais savoir à quoi sert le for du label ??
    A quel moment puis je utiliser cette propriété? Et quel est son utilité ?

    Voila comment je m'y suis pour ceux qui sont interessé
    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
     
    	  function showField()
    		{
    		    if(document.formulaire.typeCourrier.value == "Telephone" )
        		{
     
    				document.getElementById('objetCourrier').style.visibility='visible';	
    				document.formulaire.objetCourrier.style.visibility = "visible";
     
    				document.getElementById('mailExpediteur').style.visibility='hidden';	
    				document.formulaire.mailExpediteur.style.visibility = "hidden";	
    				document.getElementById('adresseCourrier').style.visibility='visible';	
    				document.formulaire.adresseCourrier.style.visibility = "visible";	
    				document.getElementById('adresseCourrier').style.visibility='hidden';	
    				document.formulaire.adresseCourrier.style.visibility = "hidden";				
    				document.getElementById('nomCharge').style.visibility='hidden';	
    				document.formulaire.nomCharge.style.visibility = "hidden";	
    				document.getElementById('numFiche').style.visibility='hidden';	
    				document.formulaire.numFiche.style.visibility = "hidden";
     
        		}
        		else if(document.formulaire.typeCourrier.value == "Mail" )
        			{   
    				      //champs visible
          			   document.getElementById('mailExpediteur').style.visibility='visible';	
    				   document.formulaire.mailExpediteur.style.visibility = "visible";	
     
    				   document.getElementById('objetCourrier').style.visibility='visible';
    				   document.formulaire.objetCourrier.style.visibility = "visible";		
     
    				   document.getElementById('nomCharge').style.visibility='visible';	
    				   document.formulaire.nomCharge.style.visibility = "visible";	
     
    				   document.getElementById('numFiche').style.visibility='visible';	
    				   document.formulaire.numFiche.style.visibility = "visible";	 
    				     //champs invisible 
    				   document.getElementById('adresseCourrier').style.visibility='hidden';	
    				   document.formulaire.adresseCourrier.style.visibility = "hidden";	
     
    		   		}
    Je ne sais pas si c'est la meilleure façon de le faire mais bon ça fonctionne.
    Si vous avez une autre solution qui puisse etre meilleure que celle ci je suis preneur

    Merci E.Bzz

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    En fait, le label associé à un input text ou un select, je vois pas trop

    Pour illustrer, associe le à une checkbox (ou un radio) : tu peux la cocher en cliquant sur le texte du label, sans avoir à "viser" la checkbox elle-même (ce qui est le cas sans label) ...

    A+

    EDIT : mais y a peut-être des utilisations que je connais pas, associé à d'autres type d'input ....
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 172
    Points : 73
    Points
    73
    Par défaut
    ok merci
    j'avais rien compris à son fonctionnement
    tu viens de m'eclairer
    thanks

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. formulaire dynamique avec struts
    Par tinkywinky dans le forum Struts 1
    Réponses: 11
    Dernier message: 17/02/2009, 09h30
  2. Utilisation des formulaires dynamiques avec struts
    Par nabdelghafour dans le forum Struts 1
    Réponses: 1
    Dernier message: 30/03/2007, 11h58
  3. Réponses: 13
    Dernier message: 08/02/2007, 17h05
  4. Formulaire Dynamique Avec Struts
    Par tarakakik dans le forum Struts 1
    Réponses: 1
    Dernier message: 24/08/2006, 13h22

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