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 :

Affichage label checkbox dans zone de texte!


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Points : 25
    Points
    25
    Par défaut Affichage label checkbox dans zone de texte!
    Boooooooonsoir à tous!

    voilà il y a quelques jours on m'a aidé ( et je remercie encore Spacefrog d'ailleurs!) à résoudre un problème d'affichage dynamique au clic sur checkbox. L'objectif était d'afficher mes cases cochées dans un champ textarea, au fur et a mesure des clicks, (et si désélections des checkboxs =>effacement dans la sélection).
    Et donc la solution suivante fonctionne, le problème est que normalement chaque value contient plusieurs valeurs. Et la cette solution ne fonctionne plus si le value contient plus de deux valeurs, pour une raison que j'ignore!
    Alors voila la première solution, qui fonctionne mais pas comme je le souhaite donc:



    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
    <script type="text/javascript">
     
     
          function change(obj){
          valeurs=new Array()
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
    				 valeurs[document.forms['form'].elements['cocher'][i].value]=document.forms['form'].elements['cocher'][i].title
    				 }
     
           document.forms['form'].elements['champ'].value=''
              var i=-1
              while(document.forms['form'].elements['cocher'][++i]){
            		if(document.forms['form'].elements['cocher'][i].checked){
            			document.forms['form'].champ.value+=	valeurs[(document.forms['form'].elements['cocher'][i].value)]+' \r\n'
            		}       
            }
          }
        </script>
    </head>
     
    <body>
    <form name="form" action="truc.htm" method="post" >
           <textarea name="champ" rows=10 cols="80"></textarea>
           <input type="checkbox" name="cocher" value="1" 
                  onclick="change(this);" title="première valeur" />Première valeur
           <input type="checkbox" name="cocher" value="2" 
                  onclick="change(this);"  title="seconde valeur" /> Seconde valeur
           <input type="checkbox" name="cocher" value="3" 
                  onclick="change(this);"  title="toisième valeur" /> Troisième valeur
        </form>
    et moi j'avais pense a récupérer l'id dans le label que j'appelerai au clic aussi mais j'arrive a gerer le code que pour un id, pas pour plusieurs, sachanr que j'en ai plein plein plein

    Alors si vous pouviez m'eclairer svp merciii!!!!

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Salut,
    ton code pique un peu les yeux mais je m’y penche quand même parce que je suis de bonne humeur ce soir

    On va voir si j’ai bien compris ce que tu cherches à faire : remplace par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    valeurs = new Object();


    Edit: non, ça sert à rien ce que je viens de dire, de toute façon un Array est un Object, donc même si la value n’est pas un nombre, ça marche.

    Qu’est-ce que tu entends en fait par « ça ne marche pas » et « chaque value contient plusieurs valeurs » ?

    Edit 2: En fait tu as une boucle while superflue, et ton code HTML me dérangeait un peu, alors je me suis permis de refaire le tout à ma sauce Voir la pièce jointe.
    Fichiers attachés Fichiers attachés

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Points : 25
    Points
    25
    Par défaut
    Merci à toi!
    En fait si tu testes ce code, tu vas voir que ca marche!

    Mon souci c'est que chaque value contient plusieurs valeurs:
    en gros:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <label>Choix 1</label> <input type="checkbox" name="coche" value="$valeur1, $valeur2, $valeur3"/>
    de sorte que lorsque je clique un checkbox , trois valeurs différentes apparaissent!

    Mais avec le code propose, ca marche que pour 2 valeurs max, je pige pas

    Mais mon objectif, est toujours le même, lorsque je clique sur ce checkbox par exemple, je voudrais retrouver ma sélection dans une liste, en gros dans mon champ textarea: vous avez cliqué sur Choix 1, je veux juste faire apparaître le label en javascript et de manière instantanée , comme c'est déjà le cas mais avec une méthode avec laquelle je suis sûr que ça fonctionne (je dis ca avec tout le respect pour celui qui m'a aidé a faire le code original je l'ai nommé plus haut! ) tu me comprends j'espère?
    Merci!!

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 82
    Points : 25
    Points
    25
    Par défaut
    Yeah!
    Merci de t'être penché sur mon cas, ça marche niquel!

    Ultra cool, j'ai vu qu'en plus tu as soigné la présentation avec des fieldsets ahhahah merci!
    J'ai mis du temps à répondre parce que j'ai mis du temps à adapter à ma page, je me suis complètement embrouiller, avec ton id du formulaire que j'avais oublié de changer de mon côté, erreur de débutant quoi! Bref c'est cool, maintenant! Merci à toi je passe en résolu!

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Up :)
    Bonjour,

    J'ai pu me permettre de reprendre ce code pour l'utiliser sur ma page perso. Cependant, je souhaite ajouter un champ de texte au script.

    Je m'explique : lorsque j'introduit un exemple de num :
    20 30 40 20 10 30 70 90 56 dans un champ texte, je clique sur un bouton générer qui générera les numéro et qui garde simplement les 3 dernier numéros c'est-à-dire 40 / 30 / 56.

    Je suis novice en programmation, je me suis lancé dans les tutoriaux il y'a quelques jours. Pourriez-vous m'aider s'il vous plaît.

    Merci d'avance

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Je m'explique : lorsque j'introduit un exemple de num :
    20 30 40 20 10 30 70 90 56 dans un champ texte, je clique sur un bouton générer qui générera les numéro et qui garde simplement les 3 dernier numéros c'est-à-dire 40 / 30 / 56.


    pour moi les 3 derniers numéros de ta suite sont 70 90 56 ???
    non ??

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut salut
    Autant pour moi, je pense que je me suis mal exprimé.

    Ce que je voulais dire, ce sont des numéros par série exemple :

    20 30 40 / 20 10 30 / 70 90 56 .

    Lorsque je colle la ligne dans mon champ, ensuite clique sur le bouton générer comme expliqué ci-dessus.

    Le résultat sera = 40 / 30 / 56.


    Merci SpaceFrog

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    mais la suite de nombres, elle est entrée dans un seul et même champs ?
    je ne pige pas trop l'ergonomie de ton truc

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonsoir,

    Voilà je vais faire de mon mieux pour être le plus explicite possible .

    Ma demande est, comment changer la valeur d'un champ input text.

    Exemple : J'ai un champ input texte ou numéro peut importe, j'introduit dans ce champ le n° du client qui est :

    20 30 40 / 20 10 30 / 70 90 56.

    Ensuite je clique sur le bouton générer et le résultat apparaitra dans le même champ sera : 40 / 30 / 56.

    J'ai créer une petite images pour êtres plus claire :

    Lien de l'image : http://www.hostingpics.net/viewer.ph...313generer.jpg


    Désolé pour ce dérangement mais je ne sais comment êtres plus claire :=( j'espère que tu a compris mes explication


    Merci d'avance.

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

Discussions similaires

  1. affichage icone dans zone de texte
    Par argon dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 15/01/2009, 10h41
  2. Problème : Affichage NULL dans zones de textes
    Par tssi555 dans le forum VB.NET
    Réponses: 7
    Dernier message: 11/08/2008, 13h46
  3. Problème d'insertion dans zone de texte
    Par roots_man dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 06/06/2005, 11h21
  4. [VB.NET] mailto adresse mail dans zone de text
    Par wilaya dans le forum ASP.NET
    Réponses: 8
    Dernier message: 22/03/2005, 11h50

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