Afficher la valeur d'un checkbox [Résolu]

Signaler
-
 Greg -
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

Messages postés
378
Date d'inscription
samedi 7 novembre 2020
Statut
Membre
Dernière intervention
6 mai 2021
75
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 !
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
Messages postés
378
Date d'inscription
samedi 7 novembre 2020
Statut
Membre
Dernière intervention
6 mai 2021
75
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(){
           ...
          });          
         }
    );
merci, cependant je ne sais pas vraiment quoi mettre là où vous mettez les ...
Messages postés
32345
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 mai 2021
3 464
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>

Merci pour la réponse, je vais essayer
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
Messages postés
32345
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 mai 2021
3 464
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 ...
bon c'est que j n'ai pas réussi a le faire fonctionner alors ahha, merci, je vais persévérer
Messages postés
32345
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 mai 2021
3 464
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...
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 ;)