Afficher automatiquement les valeur de checkbox checked

Résolu
franksh Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
franksh Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

4 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
   $('.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();
      }
    });


1
franksh Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   1
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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 54 Date d'inscription   Statut Membre Dernière intervention   1
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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 54 Date d'inscription   Statut Membre Dernière intervention   1
 
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 54 Date d'inscription   Statut Membre Dernière intervention   1
 
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