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 :

Cochage multiple checkbox


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut Cochage multiple checkbox
    Bonjour à tous,

    J'ai un tableau à double entré avec des mois en colones et des magasins en ligne.

    Cela me genere des checkbox et je souhaite avoir en haut de chaque colonne une check box "Sélectionnez tout" me permettant de sélectioner toute les check box de la colonne.

    Voilà à quoi ressemble ma mes checkbox généré :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox"  name="<? echo $num_mois.''.$id_mag; ?>" title="<? echo $nom_mois; ?>" />
    Je sais qu'il faut passer apr du javascript mais je bloque un peu.

    Merci d'avance de votre aide.

  2. #2
    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,
    une solution existante dans les Contributions

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    J'utilise deja cette fonction :

    mettre avant </head>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <script language="javascript">
    function clicTous(form,booleen)
      {
      for (i=0, n=form.elements.length; i<n; i++)
      if (form.elements[i].name.indexOf("list") != -1)
        form.elements[i].checked = booleen;
      }
    </script>
    ensuite dans ton <body>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <table border='0'>
    <tr>
    <th style='background-color: #000000'><input type='checkbox' onClick='if (this.checked) { clicTous(this.form,true) } else { clicTous(this.form,false) };'></th>
    <th>NOM1</th>
    <th>NOM2</th>
    </tr>
    <TR><td border='1' valign='top'><input type='checkbox' name='list[]' value=''></td>
    <th>VAL1</th>
    <th>VAL2</th>
    </tr>
    Bonne journée

  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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    j'ai déja proposé plusieurs fois ce script :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    <script type="text/javascript">
    function checkvalue(){
    var meschecks=document.getElementsByTagName('input')
    var checklist=new Array()
    for(i=0;i<meschecks.length;i++){
    	 if(meschecks[i].type=='checkbox'){ checklist.push(meschecks[i])}
    	}
     
    for(i=0;i<checklist.length;i++){
    	if(checklist[i].type=="checkbox"){
    		checklist[i].checked=true
    		}
    		}
    }
     
    </script>
    </head>
     
    <body>
    <form name="myform">
    <input type="checkbox" name="box1" value="1"/><br/>
    <input type="checkbox" name="box1" value="2" /><br/>
    <input type="checkbox" name="box1" value="3" /><br/>
    <input type="checkbox" name="box1" value="4" /><br/>
    <input type="checkbox" name="box1" value="5" /><br/>
    <input type="checkbox" name="box1" value="6" /><br/>
    <br/>
     
    <input type="checkbox" name="box2" value="1"/><br/>
    <input type="checkbox" name="box2" value="2" /><br/>
    <input type="checkbox" name="box2" value="3" /><br/>
    <input type="checkbox" name="box2" value="4" /><br/>
    <input type="checkbox" name="box2" value="5" /><br/>
    <input type="checkbox" name="box2" value="6" /><br/>
    <br/>
     
    <input type="checkbox" name="box3" value="1"/><br/>
    <input type="checkbox" name="box3" value="2" /><br/>
    <input type="checkbox" name="box3" value="3" /><br/>
    <input type="checkbox" name="box3" value="4" /><br/>
    <input type="checkbox" name="box4" value="5" /><br/>
    <input type="checkbox" name="box4" value="6" /><br/>
    <br/>
     
    <input type="button" value="sur valeur" onclick="checkvalue(document.myform.choixValeur.value)" />
    <input type="text" name='choixValeur' />
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut
    En voici un résumé, bon il ne marche toujours pas.

    Donc là j'ai mon code javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <SCRIPT LANGUAGE="JavaScript">
    function checkColumn(id,elem){
      var i;
      var check = (elem) ? '' : 'checked';
      for(i=1; i<=500; i++){
        document.getElementById(id+i).checked = check;
      }
    }
    </script>
    Voici ensuite ma checkbox qui
    , un jour peut être, devra cocher toutes les cases (de juillet pour celle ci-dessous) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <input type="checkbox" onClick="checkColumn(07,this.checked);" /></code>
     
    Et mes checkbox générés : 
    <code type="php"><input type="checkbox" <? echo $coche; ?> name="<? echo $num_mois.$id_mag; ?>" id="<? echo $num_mois.$id_mag; ?>" title="<? echo $nom_mois; ?>" />
    Merci d'avance de votre aide.

  6. #6
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Deux grosses erreurs:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <SCRIPT LANGUAGE="JavaScript">
    function checkColumn(id,elem){
    var i;
    var check = (elem) ? false :true ;
    for(i=1; i<=500; i++){
    document.getElementById(id+i).checked = check;
    }
    }
    </script>
    Voici ensuite ma checkbox qui
    , un jour peut être, devra cocher toutes les cases (de juillet pour celle ci-dessous) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" onClick="checkColumn('07',this.checked);" />
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut
    Merci beaucoup cela fonctionne.

    Franchement très impressionant ! (pour un débutant comme moi)

    Encore merci de ton aide !

  8. #8
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut Euhh en fait il y a un petit soucis
    Bonjour,

    Alors en fait le script comporte une erreur car si mes identifiants ne se suive pas cela ne fonctionne pas.

    Je m'explique dans le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="checkbox" <? echo $coche; ?> name="<? echo $num_mois.$id_mag; ?>" id="<? echo $num_mois.$id_mag; ?>" title="<? echo $nom_mois; ?>" />
    Si $id_mag est 1, 2, 3, 4 le cochage va fonctionner.
    En revanche si $id_mag est 1, 2, 4, 5 le cochage va s'arrêter à 2.

    De même que si $id_mag commence à 2 le cochage ne fonctionenra pas du tout.

    J'ai bien remplacé $id_mag par j (qui s'incrémente à chaque ligne) mais je n'arrive pas à récupérer l'id_mag coressondant puisque c'est j à la place.

    Merci d'avance de votre aide.

  9. #9
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    rajoute un test sur l'existence :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(i=1; i<=500; i++){
    if(document.getElementById(id+i)){document.getElementById(id+i).checked = check;}
    }
    }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut Vraiment trop fort
    Merci,

    Cela fonctionne encore une fois !

    Bon ben on embauche si tu veux ! lol

    Merci encore !

  11. #11
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    ça dépend ou et combien mais je suis à vendre
    Bonneval c'est un peu loin de chez moi ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #12
    Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 261
    Points : 69
    Points
    69
    Par défaut
    Arfff on est sur Tours maintenant !

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

Discussions similaires

  1. [Checkbox] cochage multiple
    Par Illith dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 28/06/2013, 14h50
  2. Selection multiple Checkbox + tableau
    Par titou_777 dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 20/03/2009, 11h27
  3. [Tableaux] Récupération multiples checkbox
    Par masseur dans le forum Langage
    Réponses: 2
    Dernier message: 30/07/2007, 17h34
  4. probleme de cochage de checkbox avec liste sous liste etc.
    Par satan.malin dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/02/2006, 21h49
  5. Cochage des checkbox d'un dbgrid
    Par kose dans le forum Bases de données
    Réponses: 1
    Dernier message: 25/01/2005, 16h26

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