Récuper la valeur d'une checkbox [Résolu]

Signaler
Messages postés
38
Date d'inscription
mercredi 28 novembre 2007
Statut
Membre
Dernière intervention
18 mars 2009
-
geniprogramme
Messages postés
6
Date d'inscription
mardi 10 janvier 2006
Statut
Membre
Dernière intervention
13 mai 2011
-
Bonjour,

Voilà, dans ma page, j'ai plusieurs checkbox. Je voudrais pouvoir en récuper la valeur. Voilà mon example schématisé:

<html>
<head>

<script language="JavaScript">
<!--
function valider(choisir) {
valeur = document.choisir.check;
for (var i=0;i<valeur.length;i++) alert("Vous avez choisi: "+valeur[i].value)
}



//-->
</script>
</head>









<form id='choisir' name='choisir' method=get action="javascript:void(0)" onSubmit="valider(this); return false;">










</form>

</html>


C'est à dire, le résultat actuel c'est 4 fenêtres "alert". Je voudrais une seule "alert" avec "Vous avez choisi: +la valeur de la/des case(s) cochée(s)". J'ai cherché sur le forum et j'ai trouvé des solutions un peu différentes dont je me suis inspiré mais rien n'a marché...

Pouvez-vous m'aider svp?

Merci

11 réponses

Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
29
>>
tmp=" "+valeur[i].value;  

    1° il vaut mieux mettre var tmp, sinon c'est une variable
             globale, ce qui ne sert à rien ici

    2° si on ne met pas +=, seul le dernier checkbox coché
             sera signalé. il peut y en avoir plusieurs.
             pour 1 seul coché possible utiliser
          et dans ce cas, dès que trouvé : faire break; pour ne pas
             poursuivre la boucle inutilement.



<hr />                Cordialement            Bul        
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
29
>> je n'étais pas très loin.
    c'est vrai

et si tu veux transmettre vers le serveur mattre name="chk[]"
    avec les crochets et modifier
        valeur = document.choisir["chk[]"];
        et document.choisir["chk[]"][index]<hr />                Cordialement            Bul        
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
29
Bonjour,

<html>
<head>
<script type="Text/JavaScript">
function valider()
{  var valeur = document.choisir.chk;
    var tmp="";
    for (var i=0;i < valeur.length; i++)
    {    if ( valeur[i].checked )
        {    tmp+=" "+valeur[i].value;    }
    }
    alert("Vous avez choisi: "+tmp);
}

</script>
</head>

<form id='choisir' name='choisir' method=get action="javascript:void(0);"
        onSubmit="valider(); return false;">

</form>

par exemple

( un ID doit être unique dans une page )

<hr />                Cordialement            Bul        
Messages postés
38
Date d'inscription
mercredi 28 novembre 2007
Statut
Membre
Dernière intervention
18 mars 2009

Excellent! Alors, je n'étais pas très loin. Merci pour le tuyaux à propos des ID que j'ignorais.

Merci beaucoup.
Messages postés
38
Date d'inscription
mercredi 28 novembre 2007
Statut
Membre
Dernière intervention
18 mars 2009

Est-ce par un problème de compatibilité qu'on n'écrit pas? cela me semble un peu plus facile, non?
function valider()
{  var valeur = document.choisir.chk;
      for (var i=0;i < valeur.length; i++)
    {    if ( valeur[i].checked )
        {    tmp=" "+valeur[i].value;    }
    }
    alert("Vous avez choisi: "+tmp);
}
Messages postés
38
Date d'inscription
mercredi 28 novembre 2007
Statut
Membre
Dernière intervention
18 mars 2009

Franchement, j'apprends sur le tas et ce n'est pas facile! je trouve même que c'est subtile! Des fois ça me semble facie et des fois, je l'impression de ne pas y comprendre grand chose... Merci pour l'aide!
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
29
>>j'apprends sur le tas
    y' qu'ça d'vrai  ( c'est plus long,difficile... souvent qu'avec des cours )

>>et ce n'est pas facile!
    des cours avec des prof... peuvent ( parfois ) aider, au moins au début.
    et pas toujours, parce que c'est souvent du grand n'importe quoi !
    d'ailleurs si c'était facile, ce ne serait pas drôle et on ne serait pas payé
        aussi grassement   ;o))

>>,j'ai l'impression de ne pas y comprendre grand chose
    on en est tous là... sauf quelques pédants stupides





<hr />                Cordialement            Bul        
Messages postés
13
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
29 novembre 2012

Salut !
Merci pour ce post c'est exactement ce que je cherchais!!!!
Par contre si je dois faire l'écriture dans une div plutôt que dans une fenêtre alerte comment dois-je modifier ?

merci merci
++
Messages postés
13
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
29 novembre 2012

Salut

En fait c'est bon il suffisait de remplacer la fonction alert par :

document.getElementById('l-id-de-la-div').innerHTML=tmp;
Messages postés
6
Date d'inscription
mardi 10 janvier 2006
Statut
Membre
Dernière intervention
13 mai 2011

bonjour tout le monde
moi aussi j'ai problème similaire sauf que moi j'ai plusieurs checkbox donc j'ai utiliser le nom comme ça nom[] pour récupérer le tableau après avoir envoyer mon formulaire sauf que je recupere le tous les case cochés et non cochés alors que mon besoin est de recuperer que ceux cochés sans passer par javascript juste du php
s'il y a une idée merci de me la transmettre car vraiment chui bolqué la
Messages postés
6
Date d'inscription
mardi 10 janvier 2006
Statut
Membre
Dernière intervention
13 mai 2011

bonjour tout le monde
moi aussi j'ai problème similaire sauf que moi j'ai plusieurs checkbox donc j'ai utiliser le nom comme ça nom[] pour récupérer le tableau après avoir envoyer mon formulaire sauf que je recupere le tous les case cochés et non cochés alors que mon besoin est de recuperer que ceux cochés sans passer par javascript juste du php
s'il y a une idée merci de me la transmettre car vraiment chui bolqué la