Afficher automatiquement les valeur de checkbox checked

Résolu/Fermé
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022
- 24 avril 2021 à 21:50
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022
- 25 avril 2021 à 20:57
Bonjour,

je fait un boucle de data de la base de donnée sur les utilisateur voir sur l'mage


je veut que chaque cage coché soi afficher sur le coté dans un div l'image et le nom de l'user coché.

Merci d'avance j'espere avoir bien expliqué .

Configuration: Windows / Chrome 90.0.4430.85

4 réponses

jordane45
Messages postés
35769
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 juillet 2022
4 200
Modifié le 25 avril 2021 à 21:00
   $('.checkbox-list').click(function(){
      //on vide la div result
      $("#results").html('');
      
       //récupère les checkbox cochées
      var checkedBox = $('.checkbox-list:checked');
      
      //Si il y a des cases cochées on affiche la div résult
      if(checkedBox.length>0 ){
        $("#results").show();
        //on boucle sur cette liste
        $.each(checkedBox,function(i,el){
          $("#results").append(el.value);
        });
      } else {
        //on masque
        $("#results").hide();
      }
    });


.
Cordialement,
Jordane
1
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022

25 avril 2021 à 20:57
Merci
je peux meme récupère l'image en plus du nom merci
<input class="form-check-input me-1 checkbox-list" type="checkbox" value="<?= $k->avatar ?>;<?= $k->name ?>">

        var elem = el.value;

         var img = elem.split(';');

         var image = img[0];

         var name = img[1];
0
jordane45
Messages postés
35769
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 juillet 2022
4 200
24 avril 2021 à 22:13
Bonjour,

Qu'as tu essayé ?
Sur quoi bloques tu ?

Avec quel code as tu fais ta boucle ?
As tu prévu des div masquées contenant l'image ?
Si oui, il suffit d'utiliser l'event onclick sur les checkbox pour afficher ou masquer les div des images...

En l'état de ta question, sans voir le code que tu as utilisé .. impossible de te dire mieux.

NB: Pour poster ton code sur le forum, tu devras utiliser les balises de code.
Explications, à lire ENTIEREMENT !, disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

0
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022

24 avril 2021 à 22:28
Merci,

alors oui j'ai un div cacher
  <div class="list-cheked col-md-6" id="results" style="display: none;">
           <!-- Afficher les results ici -->
           
      </div>


 $('.checkbox-list').click(function(){
  if( $(this).is(':checked')) {
      $("#results").show();
  } else {
      $("#results").hide();
  }
});

et la boucle c'est un boucle normal avec du php
 foreach ($users as $user):
/*
* a l'interieur un inpute de type checkbox
*/
endforeach;
0
jordane45
Messages postés
35769
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 juillet 2022
4 200
24 avril 2021 à 22:49
Et ta boucle elle contient quoi exactement ?
Tu génère une div caché par utilisateur ?
Tu mets bien un Heidi différent pour chacune d'elles ?
Sur quoi bloc tu précisément ? Car tu sembles avoir déjà une partie du code JavaScript (en jquery)..
0
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022

24 avril 2021 à 23:12
Je génère un seul div je bloque sur l'affichage des utilisateurs coché
    <div class="list-group">
            <!-- after only show friends in loop  -->
            <?php foreach ($user as $k): ?>
              <label class="list-group-item d-flex">
                <img src="<?= $site ?>/images/dox.jpg" width="25" height="25" alt="">
                  <?= $k->name ?>  
                <input class="form-check-input me-1 checkbox-list" id="<?= $k->id ?>" name="<?= $k->name ?>" type="checkbox" value="<?= $k->name ?>">
              </label>
            <?php endforeach; ?>
        </div>

coté boucle je crois pas que y a de problème.
enfaite je veux une idée de ou aller comment faire cette affichage si ce possible de faire en php ou js
comme ceci
0
franksh
Messages postés
27
Date d'inscription
dimanche 8 juillet 2018
Statut
Membre
Dernière intervention
19 février 2022

25 avril 2021 à 03:23
J'ai essayer de faire ce bout de code que j'avais déjà utiliser mais il affiche que la premiere ligne du boucle foreach php

$('.checkbox-list').click(function(){
  var checkedValue = $('.checkbox-list:checked').val();

  if( $(this).is(':checked')) {

      $("#results").show();
      $("#results").append(checkedValue);

  } else {
      $("#results").hide();
  }
});
0