Pb de vérification de checkbox - HTML/CSS - Programmation
Marsh Posté le 19-05-2005 à 10:00:00
Bonjour,
à l'expression :
Code :
|
je lui préfère "getElementsByName" utilié comme ceci :
Code :
|
Ensuite savoir si ça vient de là ... ?
Marsh Posté le 19-05-2005 à 11:22:41
robbyone a écrit : Bonjour,
|
Code :
|
c'est mm mieux (c'est un exemple de synthaxe, j'garantie pas que ca marche, j'ai pas testé )
Marsh Posté le 19-05-2005 à 12:48:02
sous quel navigateur t'as le pb?
Car sous IE, j'avais un javascript dans ce genre et ça amrchait niclek sous IE et Firefox (il me semble), mais pas sous Netscape.
Marsh Posté le 19-05-2005 à 12:49:39
apparemment, ça pourrait venir du fait que les checkvox ayant le même nom donnent lieu à un tableau => nomchkbox.length donne un nb > 0. Or, sous Netscape, ça me donnait une erreur ou 0, je ne sais plus...
Marsh Posté le 19-05-2005 à 14:28:03
rufo a écrit : apparemment, ça pourrait venir du fait que les checkvox ayant le même nom donnent lieu à un tableau => nomchkbox.length donne un nb > 0. Or, sous Netscape, ça me donnait une erreur ou 0, je ne sais plus... |
Tu peux leur donner des id et y acceder via ce moyen.
Marsh Posté le 19-05-2005 à 16:29:16
cerel a écrit : Tu peux leur donner des id et y acceder via ce moyen. |
c'est à peu près ce que j'ai fait.
Je me suis fait une boucle qui récupère tous les noms des éléments de mon formulaire.
Si le nom vaut "Nom_de_mon_checkbox", alors c'est un checkbox et je travaille dessus.
Marsh Posté le 21-05-2005 à 10:51:53
merci beaucoup pour votre aide
par contre une question se pose now : comment récupérer mes valeurs attribuées aux checkbox (en PHP) et qui portent toutes ici le même nom ?
d'avance merci
Marsh Posté le 27-05-2005 à 11:25:49
elles se récupèrent grâce au tableau formé de toutes les checkbox et qui devrait s'appeler (dans ton cas): nomtemp[]. Tu peux le récupérer avec $_POST['nomtemp'], et tous ses éléments sont accessibles avec la syntaxe à crochets (nomtemp[0], nomtemp[1],...)
Marsh Posté le 19-05-2005 à 09:49:02
Bonjour,
Je fais de nouveau appel à vos services car j'ai un problème lorsque je veux controler qu'au moins un checkbox est coché.
Cette vérificaion n'a pas lieu
En plus il ne va même pas sur la page suivante
Il reste figé et aucun message d'erreur n'apparait
Mon second problème réside dans le fait que lorsque je clique sur le lien "cocher toutes les cases" aucunes cases ne se cochent
D'avance je vous remercie pour votre précieuse aide.
MERCI
<HTML>
<HEAD>
<script language="JavaScript">
//vérification formulaire
function verifier() {
missinginfo = "";
var isChecked = false;
var checkbox = document.monform.elements["nomtemp"];
for (var i=0; i<checkbox.length; i++) {
if (checkbox[i].checked == true) {
isChecked = true;
break;
}
}
if (isChecked == false) {
missinginfo += "\n - Cliquer au moins sur une occurrence.";
}
if (missinginfo != "" ) {
missinginfo ="Vous n'avez pas correctement rempli les champs suivants: \n Merci de les rentrer à nouveau !";
alert(missinginfo);
return false;
}
else return true;
}
function envoyer(what) {
if (verifier()){
document.verif.action="page2.php";
document.verif.submit();
}
}
//fin
function CocherDecocher() {
for ( n=0;n<verif.elements.length;n++){
if (verif.elements[n].type=="checkbox" ){
if (verif.elements[n].checked=="false" ){
verif.elements[n].checked="true";
verif.ahref.value="Décocher toutes les cases";
}
else {
verif.elements[n].checked="false";
verif.ahref.value="Cocher toutes les cases";
}
}
}
}
</script>
</HEAD>
<BODY>
<TABLE VALIGN=top ALIGN=center WIDTH=400>
<TR>
<TD> </TD>
</TR>
<TR>
<TD VALIGN=top ALIGN=center>
<?
echo"<form method='post' name='verif'>";
echo"<U>Cases à cocher :</U> <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom1'>Nom1 <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom2'>Nom 2 <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom3'>Nom 3 <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom4'>Nom4 <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom5'>Nom 5 <BR><INPUT TYPE='checkbox' NAME='nomtemp' VALUE='nom6'>Nom 6 <BR></TD>";
echo"</form>";
?>
</TD>
</TR>
<TR>
<TD><A href="javascript:;" onClick="CocherDecocher();">Cocher toutes les cases</A></TD>
</TR>
</TABLE>
</BODY>
</HTML>