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 :

nombre de checkbox cochées ?


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut nombre de checkbox cochées ?
    Bonjour (re) à tous

    Quelle est la syntaxe pour vérifier le nombre de cases cochées dans un formulaire avant de l'envoyer.

    Pour permettre de décider par exemple que s'il n'y a pas au moins deux cases cochées on affiche un alert() au lieu d'envoyer le formulaire.

    Merci d'avance pour vos réponses

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    une petite recherche sur le forum
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  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,
    Citation Envoyé par Alexdezark Voir le message
    Pour permettre de décider par exemple que s'il n'y a pas au moins deux cases cochées on affiche un alert() au lieu d'envoyer le formulaire.
    Si tu as ce problème, c'est que tu dois utiliser des radio et non des checkbox.

    Pour le reste, vu le nombre de fois où la question a été posée,

    A+
    Pour tout savoir sur l'utilisation du forum

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

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    Citation Envoyé par Alexdezark Voir le message
    Bonjour (re) à tous

    Quelle est la syntaxe pour vérifier le nombre de cases cochées dans un formulaire avant de l'envoyer.

    Pour permettre de décider par exemple que s'il n'y a pas au moins deux cases cochées on affiche un alert() au lieu d'envoyer le formulaire.

    Merci d'avance pour vos réponses
    2 cases donc il s'agit bien de checkbox

    mais je ré-invite a chercher
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Ben non pas des radios puisque je veux au contraire en avoir plusieurs cochées

    Je suis en train de chercher dans le passé du forum... je vais bien trouver...

  6. #6
    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 le_chomeur Voir le message
    2 cases donc il s'agit bien de checkbox
    Ah oui.

    J'avais surtout lu
    Pour permettre de décider par exemple que s'il n'y a pas au moins deux cases cochées on affiche un alert() au lieu d'envoyer le formulaire.


    A+
    Pour tout savoir sur l'utilisation du forum

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

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Je comprends pas bien...

    Les posts que je trouve stipulent que les checkbox doivent avoir le même nom...

    Mais lorsque j'envoi un formulaire ou les checkbox ont le même nom, seule reste la value de la dernière dans mon tableau $_post à l'arrivé...

  8. #8
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    bon montre nous ton code ^^
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Bon Ok mais j'ai un peu peur de me faire insulter parce que c'est pas du HTML

    voici le code qui crée ma liste de cases à cocher

    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
     
     
    echo '<table width="300" align="center" border="1" cellspacing="1" cellpadding="0"><tr>
    <td colspan="4" style="font-weight:bold;padding:5px" align="center">Cochez la case de ceux que vous voulez supprimer.</td></tr>';
    echo '<tr><td align="center" style="font-weight:bold;padding:5px">Taille</td>
    <td align="center" style="font-weight:bold;padding:5px">Poids</td>
    <td align="center" style="font-weight:bold;padding:5px">Pointure</td>
    <td align="center" style="font-weight:bold;padding:5px">Cocher</td></tr>';
     
    $cptMensur=0;
    for($i=0; $i<$total; $i++){
    echo '<tr><td align="center">'.$tabMensurations[$cptMensur].'</td>';
    $cptMensur++;
    echo '<td align="center">'.$tabMensurations[$cptMensur].'</td>';
    $cptMensur++;
    echo '<td align="center">'.$tabMensurations[$cptMensur].'</td>';
    $cptMensur++;
    echo '<td align="center"><input name="particip'.$i.'" id="particip'.$i.'" type="checkbox" value="'.$i.'"/></td></tr>';
    };
    echo '</table>';
    après avoir décidé du nombre de participants à supprimer il faut indiquer lesquels dans cette liste.

    Si le nombre de cases cochées corresponds au nombre de personnes à supprimer choisi alors on valide le formulaire ,sinon :

    alert("le nombre de cases cochées doit être le même que le nombre de personnes à désinscrire !")

    c'est l'évenement onclick sur le bouton d'envoi du Form qui appelle la fonction
    qui soumet ou ne soumet pas le formulaire

  10. #10
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    effectivement tu vas te faire incendier
    montre nous le code généré
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Me faire incendier... suite...

    Le code est généré par un Ajax updater dans une Div...

    Le code source de la page (dans le navigateur) ne montre qu'une Div... vide

  12. #12
    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 Alexdezark Voir le message
    Le code source de la page (dans le navigateur) ne montre qu'une Div... vide
    Entre l'url appelée par Ajax dans la barre d'adresse du nav : la réponse sera affichée et tu pourras récupérer le HTML retourné ...

    A+
    Pour tout savoir sur l'utilisation du forum

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

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    En fait cette page attends trop de variables POST passées par mon script Ajax

    Car elle doit trouver le client dans la BDD puis trouver toutes les activités commandées par ce client.

    Regarder si on a décider d'ajouter ou de supprimer un inscrit dans l'activité

    Puis regarder dans la liste d'activités celles qui nécessitent les mensurations du client (le canyonning par exemple pour les combinaisons et les palmes )

    enfin afficher activité par activité les mensurations des participants avec une case à cocher en face de chaque participant pour pouvoir le désinscrire.

    Je ne peux pas l'interroger juste comme ça sans la suite de variables correspondant à quelque chose de valide dans la BDD

  14. #14
    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
    Alors (presque) au pif : si ce name n'est pas déjà utilisé ailleurs, essaye plutôt avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="particip" id="particip'.$i.'" .....
    A+
    Pour tout savoir sur l'utilisation du forum

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

  15. #15
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Bonjour,
    En fait tu dois ajouter des '[]' à tes noms de checkbox pour pouvoir récupèrer toutes les valeurs des checkbox cochées avec $_POST :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="particip[]" id="particip'.$i.'" type="checkbox" value="'.$i.'"/>
    Petite précision, où récupères-tu le nombre de participants à supprimer ?

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Bon,

    Je m'en suis sorti autrement...

    Chaque évenement onclic sur mes checkbox incremente ou décremente (cochée ou pas) une variable dans un champ masqué.

    lors de l'envoi du formulaire je récupère cette variable et je la compare au nombre de personnes à désinscrire.

    Cela parait-il correct ?

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Merci de votre aide

    Merci Jumano pour cette importante précision !!

    Je ferai des tests avec cette syntaxe...

    Mais la solution que j'avais trouvé semble fonctionner.

    Bonne soirée à tous.

    PS: le nombre de personnes à désinscrire et la somme des valeurs de 2 liste déroulantes (enfant, adultes) qui regarde le nombre d'inscrits dans la BDD avant de generer les <option>

  18. #18
    Membre expérimenté
    Avatar de Jumano
    Profil pro
    Inscrit en
    Février 2007
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 1 163
    Points : 1 595
    Points
    1 595
    Par défaut
    Re,
    Sinon tu pouvais faire comme ceci :
    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
    <script language="javascript" type="text/javascript">
    function valid_check() {
     var cases = form.elements; // 'form' correspondant au nom de ton formulaire
     var nbsup = document.getElementById('test').value; // 'test' est l'id de ton champs caché contenant le nombre à désinscrire
     var nb = 0;
     for( i=0; i<cases.length; i++)
     if (cases[i].type=='checkbox') {
            if(cases[i].checked) {
        		nb++;
    		}
     }
     if (nb < nbsup) {
    	 alert("Pas bon !");
    	 return false;
     } else {
    	 return true;
     }
    }
    </script>
    Et dans ta balise <form> :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onsubmit="return valid_check();"

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Merci de ces précisions Jumano

    Je vais pouvoir essayer cela... demain...

    Bonne soirée

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Bonjour,

    Jumano : J'ai testé avec ta solution et ça marche Super merci

    Je l'ai un tout petit peu adapté, mais cela me permet d'éviter un champ masqué supplémentaire.

    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 valid_check(num) {
     var cases = document.forms["formModif"+num].elements;
     var nbsup=parseInt(document.getElementById("enfant"+num).value)+parseInt(document.getElementById("adulte"+num).value);
     var nb = 0;
     for( i=0; i<cases.length; i++)
     if (cases[i].type=='checkbox') {
            if(cases[i].checked) {
        		nb++;
    		}
     }
     if (nb != nbsup) {
    	 alert("Pas bon !");
    	 return false;
     } else {
    	 alert("OK !");
    	 return false;
     }
    }
    Trés bonne journée à tous

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

Discussions similaires

  1. compter le nombre de checkbox coché
    Par mademoizel dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/06/2006, 16h03
  2. 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
  3. 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
  4. nombre de checkbox cochés
    Par manaboko dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 02/05/2005, 15h39
  5. [débutant] obtenir le nombre de checkbox cochées
    Par macke_d dans le forum Composants
    Réponses: 3
    Dernier message: 30/03/2005, 02h17

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