Aller au contenu

Sujets conseillés

Posté

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.

Posté

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.

Posté

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

Posté
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 :)

Posté
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>

Veuillez vous connecter pour commenter

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



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