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 :

Valeur de checkbox séléctionné à ajouter dans champs text


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Points : 13
    Points
    13
    Par défaut Valeur de checkbox séléctionné à ajouter dans champs text
    Bonjour,
    Si quelqu'un peut m'aider,
    je souhaite récuperer les valeurs de checkbox cochés et les mettre dans champs text à chaque fois que coche et chaque valeur dans le champs texte est séparer par des virgules. j'ai fait un permier avec mon code ci-dessous:
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    <SCRIPT LANGUAGE = "JavaScript">
    <!--
    function ChangeStatut(uploadForm)
    {
    	if(uploadForm.condition.checked == true)
    	{
    		for ( i=0 ; i < 3 ; i++ )
      		{ 
    			if (uploadForm)
    			{  
    				document.forms[0].chkboxarray[i].checked=true;
    				document.getElementById("choix").innerHTML="D&eacute;s&eacute;ctionner tous";
    				uploadForm.valeur.value=document.forms[0].chkboxarray[i].value;
    			}
    		}
    	}
    	if(uploadForm.condition.checked == false)
    	{
    		uploadForm.valeur.value=uploadForm.condition.value;
    		for ( i=0 ; i < 3 ; i++ )
      		{ 
    			if (uploadForm)
    			{  
    				document.forms[0].chkboxarray[i].checked=false;
    				document.getElementById("choix").innerHTML="S&eacute;l&eacute;ctionner tous";
    			}
    		}
    	}
    } 
    function selection_trier(uploadForm)
    {
    	for ( i=0 ; i < 3 ; i++ )
      	{
    		cocher=document.uploadForm.chkboxarray[i].checked;
    		if(cocher=true)
    		{
    			alert(document.forms[0].chkboxarray[i].value);
    		}
    		uploadForm.valeur.value=document.uploadForm.chkboxarray[i].value;
    	}
    }
    -->
    </SCRIPT> 
    <BODY>
    <FORM name="uploadForm">
    <INPUT TYPE="checkbox" NAME="chkboxarray" VALUE="nom1" onClick="selection_trier(this.form)">nom1<br>
    <INPUT TYPE="checkbox" NAME="chkboxarray" VALUE="nom2" onClick="selection_trier(this.form)">nom2<br>
    <INPUT TYPE="checkbox" NAME="chkboxarray" VALUE="nom3" onClick="selection_trier(this.form)">nom3<br>
    <input type="checkbox" name="condition" value="tous" onClick="ChangeStatut(this.form)">
    <span id="choix">S&eacute;l&eacute;ctionner tous</span><br>
    Nom s&eacute;l&eacute;ctionn&eacute; <input type="text" name="valeur"><br>
     
    </FORM>
    </BODY>
    à savoir si je coche le nom1, le javascript ajoute ceci dans le champs text.
    Vous pouvez aussi me donner de lien de cours.
    Merci de votre aide

  2. #2
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Bonjour,

    Attention, vous passez à chaque fois dans le if et vous affichez de toute façon le dernier value des trois cases car cela est mal construit. Voila ce que ça devrait donner:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    cocher=document.uploadForm.chkboxarray[i].checked;
    if(cocher==true)
    {
          alert(document.forms[0].chkboxarray[i].value);
          uploadForm.valeur.value=document.uploadForm.chkboxarray[i].value;
    }
    Seulement, il ne va afficher que le value de la dernière case cochée qui sera parcourue. Il faut peut-être faire qqch comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    uploadForm.valeur.value += document.uploadForm.chkboxarray[i].value + ", ";
    Cependant, à chaque clic, vu que vous reconstruisez la chaine, il faudra avant tout la vider sinon il va garder d'anciennes valeurs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function selection_trier(uploadForm)
    {
       uploadForm.valeur.value = "";

  3. #3
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Pour virer la dernière virgule (et l'espace), vous pouvez ajouter ceci en fin de fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(uploadForm.valeur.value.length > 0)
    {
          uploadForm.valeur.value = uploadForm.valeur.value.substring(0, uploadForm.valeur.value.length -2);
    }

    Par contre il faudra revoir la fonction pour la case "(Dé)Séléctionner tout".

Discussions similaires

  1. Ajouter un champ texte dans mon formulaire
    Par mademoizel dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/12/2010, 16h12
  2. Ecrire dans champ texte des valeurs de type float seulement
    Par aliomrani1 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 02/03/2007, 11h27
  3. recuperer valeur liste dans champs texte
    Par fredaphp dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/05/2006, 19h17
  4. Utilisation de replace dans champs text
    Par cdelamarre dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 01/12/2004, 17h26
  5. Que privilégier : %like% dans champs texte, ou plain text ?
    Par Dimitri01 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 31/01/2004, 11h45

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