Page 1 sur 1

validation formulaire

Posté : 13 sept. 2006, 11:32
par hervé1999
bonjour, je débute en javascript et j'ai un petit problème avec mon scripte ci-dessous car lorsque je valide je souhaite controler les champs mais celui me mets bien une erreur au 1er champs vide et passe ensuite directement à la page "résultat" sans controlé le reste !
Pouvez vous m'aidez svp ?
et une dernière question faut il tester si javascript est activé quant on valide le formulaire ou au cargement de la page ?
merci.

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>..............</title> <SCRIPT language=javascript> alert("Javascrit actif"); </SCRIPT> <NOSCRIPT> Pas de javascript ! </NOSCRIPT> <script type="text/javascript"> <!-- function verif_formulaire() { if(document.formulaire.realname.value == "") { alert("Veuillez entrer votre nom!"); document.formulaire.nom.focus(); return false; } if(document.formulaire.email.value == "") { alert("Veuillez entrer votre adresse électronique!"); document.formulaire.courriel.focus(); return false; } if(document.formulaire.email.value.indexOf('@') == -1) { alert("Ce n'est pas une adresse électronique!"); document.formulaire.courriel.focus(); return false; } if(document.formulaire.title.value == "") { alert("Veuillez entrer votre âge!"); document.formulaire.age.focus(); return false; } if(document.formulaire.comments.value == "") { alert("Veuillez entrer votre commentaire"); document.formulaire.age.focus(); return false; } } //--> </script> </head> <body> <form name="formulaire" method="POST" action="formmail.php" onSubmit="return verif_formulaire()"> <input type=hidden name=subject value=formmail> <p class="formulaire"> <label>Votre Nom:</label><br /> <input type=text name=realname size=30> </p> <p class="formulaire"> <label>Votre Email:</label><br /> <input type=text name=email size=30> </p> <p class="formulaire"> <label>Sujet:</label><br /> <input type=text name=title size=30> </p> <p class="formulaire"> <label>Commentaires:</label><br /> <textarea COLS=50 ROWS=6 name=comments></textarea> <p> <p class="formulaire"> <input type="submit" value="Envoyer"> <input type="reset" value="Annuler"> </p> </form>

Posté : 13 sept. 2006, 13:10
par Invité
:oops: :oops: :lol:
J'ai trouvéj'avais pas changer:

Code : Tout sélectionner

if(document.formulaire.realname.value == "") { alert("Veuillez entrer votre nom!"); document.formulaire.nom.focus(); return false; }
nom différent de realname !
sorry.

Posté : 13 sept. 2006, 13:15
par sadeq
C'est normal tu as des erreurs dans les noms de tes zones dans les instructions qui font des 'focus()'
Mais aussi ta fonction ne retourne jamais 'true'

Correction:

Code : Tout sélectionner

function verif_formulaire() { if(document.formulaire.realname.value == "") { alert("Veuillez entrer votre nom!"); document.formulaire.realname.focus(); return false; } if(document.formulaire.email.value == "") { alert("Veuillez entrer votre adresse électronique!"); document.formulaire.email.focus(); return false; } if(document.formulaire.email.value.indexOf('@') == -1) { alert("Ce n'est pas une adresse électronique!"); document.formulaire.email.focus(); return false; } if(document.formulaire.title.value == "") { alert("Veuillez entrer le sujet!"); document.formulaire.title.focus(); return false; } if(document.formulaire.comments.value == "") { alert("Veuillez entrer votre commentaire"); document.formulaire.comments.focus(); return false; } return true; }