Texte obligatoire
Rendre un champ obligatoire avec JavaScript
Exemple de champ de texte
<input type="text" name="nom" size="20" maxlength="15" />
<input type="text" name="nom" size="20" maxlength="15" />
Pour rendre un champ de texte obligatoire, comme un nom, l'astuce la plus simple consiste à vérifier si le contenu du - ou des - champ(s) que l'on veut rendre obligatoire, n'est pas vide.
Exemple de code JavaScript sur les champs nom et prenom
Voici la première partie de code à copier dans le head de votre document (Note pour David: ou dans un fichier javascript externe) :
<script>
/* --- www.easy-micro.org --- */
<!--
function valider() {
//si les valeurs des champs nom et prenom sont différentes du vide
if( (document.form1.nom.value != "") && (document.form1.prenom.value != "") ) {
//les données sont ok, on peut envoyer le formulaire
return true;
}
else {
//sinon on affiche un message
alert("Merci de remplir les champs obligatoires");
//et on indique de ne pas envoyer le formulaire
return false;
}
}
//-->
</script>
/* --- www.easy-micro.org --- */
<!--
function valider() {
//si les valeurs des champs nom et prenom sont différentes du vide
if( (document.form1.nom.value != "") && (document.form1.prenom.value != "") ) {
//les données sont ok, on peut envoyer le formulaire
return true;
}
else {
//sinon on affiche un message
alert("Merci de remplir les champs obligatoires");
//et on indique de ne pas envoyer le formulaire
return false;
}
}
//-->
</script>
Voici maintenant la deuxième partie de ce script:
Copier le code suivant : onsubmit="return valider()"
Cherchez la balise <form id="form1" name="form1" method="post" action="...> dans le code de votre document.
Collez ce code dans cette balise (avant l'attribut "action", par exemple).
Rajoutez un espace et le tour est joué!
Important
Pour que cela marche, votre formulaire doit s'appeler "form1" (<form name="form1"...) et chaque champ obligatoire doit porter un nom via l'attribut "name" ou "id" de sa balise input.
Exemple avec le champ "prenom" :
<input type="text" id="prenom"...
Pour rajouter un champ obligatoire (par exemple le champ adresse),
il suffit de rajouter autant de && (document.form1.adresse.value != "")
que de champ que l'on veut rendre obligatoire.
Mais pour vérifier un Code Postal, c'est une autre histoire...