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 :

Compter le nombre de checkbox cochées


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2003
    Messages : 408
    Par défaut Compter le nombre de checkbox cochées
    Bonjour,

    Voilà j'ai un formulaire avec x case à cocher que l'utilisateur sélectionne, mon formulaire est de ce type là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="checkbox" name="marque[52]" id="marque52" onClick="count_chkBox(52);"  />
    le champ name me permet de récupérer la case et la stocker dans la base de données

    j'ai trouvé cette fonction mais je n'arrive pas à l'adapter
    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
     
    function count_chkBox(j)
    {
    var dbRes = [];
    var nbre_check = 0;
    var dbEl = document.getElementsByName("marque");
    for (i=0; i<dbEl.length; i++) {
    		if (dbEl[i].checked) 
    		{
    		dbRes.push(dbEl[i].value);
    		nbre_check ++ ;
    		}	
    	}
    	if (dbRes.length > <? echo $nb_marque_restante ?>)
    	{
    		document.getElementById('marque'+j).checked=false;
    		alert("message alerte");
    	}
    }
    pouvez m'aider ?

    merci d'avance
    Ludo

  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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    c'est pas dans la FAQ ça ?

    ha ben si ...
    http://javascript.developpez.com/faq...ps#valCheckbox
    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 !

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 63
    Par défaut
    "marque" != "marque[52]"
    Donc pour résumer la fonction document.getElementsByName() ne vas pas du tout fonctionner dans ton cas, il faut mieux passer par une regexp pour tester le name de ton champ. ou bien directement tester le name dans ta fonction :

    Tu trouveras la démo de ce que tu souhaite au final ici :
    http://www.jsfiddle.net/HCZzt/2/

    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
    function count_chkBox(input) {
        var form = input.form; //on recupere le formulaire
        var nbchecked = 0;
        var dbEl = form.elements; //recupere tous les elements du form
        for (i = 0; i < dbEl.length; i++) {
            var el = dbEl[i];
            if (el.type == "checkbox" && el.name.match(/marque/) && el.checked) {
                nbchecked++
            }
        }
     
     
        if (nbchecked > 2) // ici je mets 2 mais c'est pour la demo
        {
            input.checked = false;
            alert("message alerte");
        }
    }
    PS : dbRes ne sert strictement à rien dans ton code, c'est pour ça que je l'ai dégagé et remplacé par une variable que j'incrémente tout simplement.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2003
    Messages : 408
    Par défaut
    merci pour l'info mais je ne vois toujours pas

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2003
    Messages : 408
    Par défaut
    je viens d'essayer cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function count_chkBox(j)
    {
    var nbre_check = 0;
    for (i=0; i<document.form.marque.length; i++) {
        if (document.form.marque[i].checked)
          nbre_check ++ ;
    	}
    	if (nbre_check > <? echo $nb_marque_restante ?>)
    	{
    		document.getElementById('marque'+j).checked=false;
     
    	}
    	}

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2003
    Messages : 408
    Par défaut
    merci Gsnalf je n'avais pas vu ton exemple on a du poster en même temps
    c'est tout à fait ce que je cherche à faire je vais regarder cela de plus pres
    un grand merci

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/05/2011, 21h41
  2. Compter le nombre de checkbox coché .
    Par Alexand92 dans le forum VB.NET
    Réponses: 2
    Dernier message: 05/04/2011, 16h28
  3. compter le nombre de checkbox coché
    Par mademoizel dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/06/2006, 16h03
  4. Compter le nombre de CheckBox cochées
    Par dj-julio dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/02/2006, 14h06
  5. fonction pour compter le nombre de checkbox coché ?
    Par Death83 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 15/09/2005, 11h28

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