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 :

getRadios : récupération des checkboxs cochées


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 34
    Par défaut getRadios : récupération des checkboxs cochées
    salutations tout le monde,
    j'ai un problème vraiment bizarre et je sèche

    par une boucle, je créée autant de checkbox que de jours dans un mois :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" name="dates[]" id = "radiobutton" value= "<?php echo $MH."-".$j ?>" onClick="getRadios(this.form)" /> <?php echo $j;?>

    et via une fonction getRadios pompées sur le net que voici, je récolte les cases qui sont cochées :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <SCRIPT LANGUAGE="JavaScript">
    //nom du formulaire : <SCRIPT LANGUAGE="JavaScript">
    var vCat1=""; 
    function getRadios(Form){
    // initialize counters
    var j = 0; var i = 0 ;
    // analyze categories
    j=document.Form.dates.length;
    	for (i=0; i<j; i++){
    		if ((document.Form.dates[i].checked))
    		vCat1 = document.Form.dates[i].value;
    	}
    }
    </SCRIPT>
    le script fonctionne MAIS dans certains cas seulement :
    - quand je coche les cases de 1 à 9, les valeurs de 1 à 9 sont activées
    - quand je coche les cases de 2 à 9, les valeurs de 2 à 9 sont activées
    - quand je coche les cases de 1 à 11, les valeurs de 1 à 11 sont activées
    - quand je coche les cases de 2 à 11, les valeurs de 10 à 19 sont activées !!!!
    - quand je coche les cases de 3 à 12, les valeurs de 10 à 19 sont activées
    - quand je coche les cases de 9 à 13, les valeurs de 10 à 14 sont activées
    - quand je coche les cases de 8 à 20, les valeurs de 10 à 22 sont activées

    incompréhensible.........

    Merci d'avance pour la solution ou un autre script car là....

    PS : je ne suis pas très calé en js, je ne sais faire que des petites choses.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    1- Le code HTML généré nous aiderons plus à t'aider sur le forum js que le php.
    2- Avec ce code, tu auras plusieurs fois le même id "radiobutton". Un id doit être unique dans un document.
    3- Pourquoi passé un paramètre à la fonction or que tu ne l'utilises même pas.
    4- Avec ton code, vCat1 prendra la valeur du dernier checkbox coché. Si tu veux récupérer les checkbox cochés du formulaire en paramètre:
    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
    <script type="text/javascript">
     
    function getRadios(Form){
    checkboxCoches =  new Array();
    	for (i=0; i<Form.dates.length; i++){
    		if ((document.Form.dates[i].checked))
    		checkboxCoches.push(Form.dates[i].value) ;
    	}
    // seulement pour verification 
    for (i=0; i<checkboxCoches.length; i++){
         alert(checkboxCoches[i]);
    }
    return checkboxCoches;
    }
    </script>
    A+.

  3. #3
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    type="checkbox" name="dates[]" id = "radiobutton"

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 34
    Par défaut c'est ok, une dernière chose et j'vous laisse...
    Salutations à vous 2,

    oui effectivement Romain, je m'en suis aperçu en faisait le copie/collé sur le site, des fois, à force d'avoir le code sous les yeux, on le voit plus ou on ne regarde plus que certaines portions.

    andry, merci bien, ça marche, comme prévu dans le code, il m'affiche combien de checkbox j'ai et me retourne les valeurs cochées à chaque fois que je clique sur l'une d'entre elles. et oui, effectivement, j'avais des erreurs mais je ne maitrise pas le js mais par contre, dès que j'ai un peu de temps, je m'y mets, promis !!

    Question subsidiaire, j'aurais besoin de passer le tableau checkboxcoches en $_post pour la page suivante, comment ça se passe avec un tableau en js ?

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Coté php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (isset($_POST["dates"]))
    {
    $dates = $_POST["dates"];
      foreach($dates as $date){
             echo $date;
    }
    }
    Tu récupères un tableau, seul les cases cochées sont envoyées.

    A+.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 34
    Par défaut ou...
    Merci bien l'ami, mais c'était dans le formulaire d'envoi , le temps que je teste ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms[0].checkboxChoisies.value = checkboxCoches
    ;

    avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="checkboxChoisies" >
    dans le formulaire, et normalement c'est OK

    PS à ceux qui s'inspirent de ce post : pour plus de clarté, changer les noms des variables, j'ai mis ça pour expliquer

    merci encore, bonne continuation

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

Discussions similaires

  1. garder des checkbox cochés lorsque l'on change de page
    Par barouz dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 29/06/2007, 17h21
  2. Réponses: 1
    Dernier message: 18/04/2007, 06h05
  3. Réponses: 6
    Dernier message: 05/10/2006, 17h04
  4. Liste des checkbox cochées dans un formulaire
    Par qwiskas dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 19/09/2006, 05h25
  5. [struts] [checkbox] récupération des valeurs cochées
    Par abourell dans le forum Struts 1
    Réponses: 16
    Dernier message: 10/06/2005, 20h58

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