Aller au contenu

pb de validation de formulaire


rico2922

Sujets conseillés

Je souhaite bloquer l'accès au bouton de validation de mon formulaire tant que la case à cocher précédente n'a pas été coché.

Je m'explique : à la fin de mon formulaire j'ai inséré une checkbox "Iagree" (décoché par défaut) puis un bouton "Inscription" (disabled par défaut). Je souhaite que tant que cette case mon bouton reste inactif mais que dès que la case est cochée elle libère mon bouton.

Quelqu'un peut m'aider de manière simple ?

Merci.

Lien vers le commentaire
Partager sur d’autres sites

Il faut tester la case à cocher à chaque fois que le bouton est sollicité.

Teste ca, j'ai fait un truc similaire mais c'était sur une zone de saisie.

Sur le bouton :

onFocus="verif_case()"

La fonction verif_case :

function verif_case() {

 if (document.ton_formulaire.la_case.checked == true) {

     document.ton_formulaire.ton_bouton.disabled=false;
 }
 else {

     document.ton_formulaire.ton_bouton.disabled=true;
 }

return;
}

A essayer... je ne suis pas sur de la propriété

checked

... il faut peut-être tester la valeur... je ne sais pas.

Lien vers le commentaire
Partager sur d’autres sites

Le plus simple pour éviter d'avoir à tester constamment à l'aide du "onfocus" est encore d'avoir le bouton submit "disabled" par défaut, et de mettre une action "onclick" sur la case à cocher, avec appel d'une fonction qui active/désactive le bouton selon la valeur de cette case.

Voici un exemple qui semble fonctionner comme tu veux:

<html>
<head>
<title>Test formulaire</title>
<script language="JavaScript" type="text/javascript">
function validate() {
if (document.formulaire.verif.checked==true)
document.formulaire.envoi.disabled=false;
else
document.formulaire.envoi.disabled=true;
}
</script>
</head>
<body>
<form action="validation.php" method="post" name="formulaire">
<input type="checkbox" name="verif" onclick="validate();"> Je suis d'accord !<br />
<input type="submit" name="envoi" value="Envoyer" disabled="true" />
</form>
</body>
</html>

Dan

Lien vers le commentaire
Partager sur d’autres sites

Le plus simple pour éviter d'avoir à tester constamment à l'aide du "onfocus" est encore d'avoir le bouton submit "disabled" par défaut, et de mettre une action "onclick" sur la case à cocher, avec appel d'une fonction qui active/désactive le bouton selon la valeur de cette case.

C'est clair :nono: chuis c** des fois :)

Lien vers le commentaire
Partager sur d’autres sites

Le plus simple pour éviter d'avoir à tester constamment à l'aide du "onfocus" est encore d'avoir le bouton submit "disabled" par défaut, et de mettre une action "onclick" sur la case à cocher, avec appel d'une fonction qui active/désactive le bouton selon la valeur de cette case.

Pas d'accord, si l'utilisateur a désactiver javascript, il ne pourra jamais soumettre le formulaire. De plus l'utilisateur peut aussi soumettre son formulaire en appuyant sur entrée. Il faut mettre un contrôle de vérification sur l'événement onSubmit du formulaire , et rajouter un contrôle sur le serveur (via php par exemple) dans le cas où javascript est désactivé.

function verification(){
 if (document.forms["formulaire"].verif.checked==true) {
    return true;
 }else{
    return false;};
}

<form action="validation.php" method="post" name="formulaire" onSubmit="return verification();">
<input type="checkbox" name="verif" id="verif"> Je suis d'accord !<br />
<input type="submit" name="envoi" value="Envoyer" />
</form>

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...