Afficher la valeur d'un checkbox

Résolu
Bonjour à tous,

Je pense que ce n'est pas compliqué mais je galère.

J'ai une liste de sélection possible via des checkbox, j'aimerai récupérer la valeur des checkbox sélectionné par l'utilisateur, pour écrire ces valeurs dans un input.
j'arrive à compter le nombre de checkbox cochées mais pas a écrire leur valeur.

Quelqu'un aurait-il une solutson?

Merci

9 réponses

  1. Bonjour,
    C'est la propriété .checked qui indique si un checkbok est coché (.checked==true) ou non.

    Si vous voulez qu'on vous aide, postez le code que vous avez déjà écrit ici, entre les balises qui vont bien !
    0
    1. ma fonction de comptage de checkbox cochées, qui marche.

      var scoretotal = function(){
      var n = $( "input:checked" ).length;
      document.getElementById("mon-id").value = Number.parseFloat(n);
      
      };
      scoretotal();
      $( "input[type=checkbox]" ).on( "click", scoretotal );


      et dans un autre input, j'aimerai pouvoir recuperer la valeur des checkbox, pour l'afficher dedans
      0
      1. Les différents méthodes avec Jquery sont bien expliquées ici : http://memo-web.fr/categorie-jquery-25/
        Celle_ci doit correspondre à ce que vous voulez :
        $("input[type='checkbox']:checked").each(
                  function(){
                   ...
                  });          
                 }
            );
        0
        1. merci, cependant je ne sais pas vraiment quoi mettre là où vous mettez les ...
          0
          1. Modérateur
            Bonjour,

            <!DOCTYPE html>
            <html>
              <head>
                <title>TEST</title>
                <meta charset="utf-8">
              </head>
              <body>
                <?php
                  
                  for($i=1;$i<20;$i++){
                    ?>
                  <input type="checkbox" name="toto" value= "c_<?php echo $i;?>"><br>
                  <?php
                  }
                  ?>
                  <input id="mon-id" value="">
                  <input id="liste" value="">
                  
                  <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
            
                  <script type="text/javascript">
                   function scoretotal(){
                      var listChkb = "";
                      var checkedBox = $("input:checked" );
                      var n = checkedBox.length;
                      $("#mon-id").val(Number.parseFloat(n));
                      console.log(checkedBox);
                      $.each(checkedBox,function(i,el){
                        listChkb += el.value;
                      });
                      $("#liste").val(listChkb);
                  };
            
                  scoretotal();
            
                  $( "input[type=checkbox]" ).click(function(){
                    scoretotal();
                  });
                  </script>
              </body>
            </html>
            

            0
            1. Merci pour la réponse, je vais essayer
              0
              1. Sauf erreur de ma part, ceci me donne encore le nombre de case cochées, et non la value de chacune d'elle. Et c'est ça moi que je voudrais
                0
                1. Modérateur
                  C'est bien une erreur de ta part ...
                  As tu testé le code tel que je te l'ai donné ?
                  Tu verras que ça marche parfaitement... ça te donne le nombre dans un input .. et la liste dans un autre ...
                  0
              2. bon c'est que j n'ai pas réussi a le faire fonctionner alors ahha, merci, je vais persévérer
                0
                1. Modérateur
                  Tu as testé le code TEL que je te l'ai donné ?
                  Tu créés un fichier .html et tu colles le code ...
                  Puis tu le testes...
                  0
              3. j'ai voulu l'adapter direct et c'est la où j'ai fais une erreur, mais ton code marche en effet. je vais y arriver en reprenant calmemant.
                je te remercie et met en résolu.
                Bonne journée ;)
                0