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 :

Checkbox pour tout selectionner


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2007
    Messages : 78
    Points : 65
    Points
    65
    Par défaut Checkbox pour tout selectionner
    Bonjour à tous,

    Voila, pour commencer, je suis une bille en javascript .

    J'ai une page html généré par un script PHP. Celle-ci contient aucun/plusieurs tableau contenant chacun divers informations et une checkbox. Chaque checkbox est indépendante, c'est à dire qu'elles ont toute un attribut name différent, mais aussi un id différent. Le name et l'id d'une même checkbox est différent.

    Concrètement, je souhaite qu'il y ai sur ma page une autre checkbox qui permette la coche de toutes les checkbox de ma page (le javascript est le langage le plus approprié).

    Je vous met un bout de code pour que vous voyez comment se crée ma page :

    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
     
    <?php
    if(isset($liste_departement)){
        foreach($liste_departement as $id => $departement){
            echo '<table border="1">
                      <tr>
                        <th>Departement</th>
                        <th>Sélection</th>
                      </tr>
                      <tr>
                        <td>'.$departement.'</td>
                        <td><input type="checkbox" name="envoi_'.$id.'" id="'.$id.'" /></td>
                      </tr>
                    </table>';
        }
        echo '<input type="checkbox" name="select_all" />';
        echo '<input type="submit" value="Envoyer" />';
    }else{
        echo 'Aucun département à afficher.';
    }
    ?>
    Attention, ceci n'est pas le vrai code de ma page, mais une adaptation. Je travaille sur des données sensibles, donc il vas de soit que je ne puisse vous donné le code original. De plus étant donnée que ceci est une adaptation, éviter les commentaire du genre "c'est mal codé" ou "tu a oublié tel ou tel poin virgule.". Tous ce que je demande, c'est comment exécuter ma sélection de toute les checkbox en javascript ( évènement onClick, je pense).

    Merci d'avance.

  2. #2
    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
    direction la FAQ

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    soyons laconiques, alors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var les_input = document.getElementsByTagName("input");
    var nb_input = les_input.length;
    for (var i=0; i<nb_input; i++)
    if (les_input[i].type=="checkbox")
       les_input[i].checked = ce_que_tu_veux;
    EDIT : @Spaffy : sur ce point, la FAQ n'est pas adaptée

    A+

  4. #4
    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
    Pas tel quelle, masi une petite extrapolation ...
    à partir du moment ou tu recupères getElementsByName et que tu boucles dessus ..

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    à partir du moment ou tu recupères getElementsByName et que tu boucles dessus ..
    Ben même : ici tous les name sont différents, visiblement ...

    A+

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2007
    Messages : 78
    Points : 65
    Points
    65
    Par défaut
    Merci E.Buzz, ta solution fonctionne. Voila mon code finale :

    code HTML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="checkbox" name="select_all" onClick="if(this.checked){check_all(true);}else{check_all(false);}" />
    Fonction Javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function check_all(etat){
        var inputs = document.getElementsByTagName("input");
     
        for(var i=0; i<inputs.length; i++){
            if(inputs[i].type == "checkbox"){
                inputs[i].checked = etat;
            }
        }
    }

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

Discussions similaires

  1. [DisplayTag] Title pour display:column contenant checkbox pour tout sélectionner
    Par Slyders dans le forum Taglibs
    Réponses: 1
    Dernier message: 06/05/2010, 15h21
  2. Modifier le PATH une fois pour toute
    Par elitost dans le forum Linux
    Réponses: 8
    Dernier message: 06/09/2009, 13h21
  3. cliquer sur un bouton pour tout selectionner dans une liste multiple
    Par PAYASS59 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 23/07/2007, 15h33
  4. Réponses: 6
    Dernier message: 06/10/2004, 10h41
  5. [VB.NET] Datagrid + CheckBox : Cocher toutes les cases
    Par sirex007 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 24/05/2004, 15h33

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