Validation du formulaire JavaScript

La zone de saisie, la zone déroulante, etc. du formulaire peuvent recevoir les entrées de l'utilisateur, donc l'utilisation de JavaScript pour faire fonctionner le formulaire peut obtenir le contenu saisi par l'utilisateur ou définir un nouveau contenu pour une zone de saisie.

Les contrôles de saisie des formulaires HTML incluent principalement les types suivants :

zone de texte, <input type="text"> correspondante, , utilisée pour saisir du texte ;

bouton radio, case à cocher <input type="radio"> correspondante, utilisée pour sélectionner un élément

, Le < ;input type="checkbox"> est utilisé pour sélectionner plusieurs éléments ; la liste déroulante

, le <select> correspondant est utilisé pour en sélectionner un. Item ;

texte masqué, le <input type="hidden"> correspondant n'est pas visible par l'utilisateur, mais le texte masqué sera envoyé au serveur lorsque le le formulaire est soumis.


Validation du formulaire JavaScript

JavaScript peut être utilisé pour valider ces données d'entrée dans les formulaires HTML avant que les données ne soient envoyées au serveur.

Les données du formulaire nécessitent souvent l'utilisation de JavaScript pour vérifier leur exactitude :

Vérifier si les données du formulaire sont vides ?
Vérifier que l'adresse e-mail saisie est correcte ?
Vérifier que la date est correctement saisie ?
Vérifier si le contenu de saisie du formulaire est numérique ?

La fonction suivante permet de vérifier si l'utilisateur a rempli les éléments requis (ou obligatoires) dans le formulaire. Si le champ obligatoire ou le champ obligatoire est vide, la boîte d'avertissement apparaîtra et la valeur de retour de la fonction est fausse, sinon la valeur de retour de la fonction est vraie (ce qui signifie qu'il n'y a pas de problème avec les données) :

function CheckForm ()
{
if (document.form.name.value.length == 0) {
alert("Veuillez entrer votre nom!");
document.form.name.focus( );
return false;
}
return true;
}

chinois/anglais/numéro /adresse email jugement de légalité :

function isEnglish(name) //英文值检测

if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) { 
if(name.charCodeAt(i) > 128)
return false;
>
return true;
}

function isChinese (name) //中文值检测

if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) { 
if(name.charCodeAt(i) > 128)
return true;
>
return false;
}

function isMail(name) // E-mail值检测

if(! isEnglish(name))
return false;
i = name.indexOf(" at ");
j = name dot lastIndexOf(" at ") ;
if(i == -1)
return false;
if(i != j)
return false;
if(i == longueur du point du nom)
return false;
return true;
}

function isNumber(name) //数值检测

if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) { 
if(name.charAt(i) < "0" || name.charAt(i) > "9")
return false;
>
return true;
}

function CheckForm()

if(! isMail(form.Email.value)) { 
alert("您的电子邮件不合法!");
form.Email.focus();
return false;
}
if(! isEnglish(form.name.value)) { 
alert("英文名不合法!");
form.name.focus();
return false;
}
if( ! isChinese(form.cnname.value)) { 
alert("中文名不合法!");
form.cnname.focus();
return false;
}
if (! isNumber(form.PublicZipCode.value)) { 
alert("邮政编码不合法!");
form.PublicZipCode.focus();
return false;
}
renvoie vrai ;
}

Formation continue
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function $(id) { return document.getElementById(id); } function check() { var email = $("email").value; var password = $("password").value; var repassword = $("repassword").value; var name = $("name").value; $("emailinfo").innerHTML = ""; $("passwordinfo").innerHTML = ""; $("repasswordinfo").innerHTML = ""; $("nameinfo").innerHTML = ""; if(email == "") { $("emailinfo").innerHTML = "Email值不能为空"; $("email").focus(); return false; } if(email.indexOf("@") == -1 || email.indexOf(".") == -1) { $("emailinfo").innerHTML = "邮箱格式不正确,必须包含@和."; $("email").focus(); return false; } if(password == "") { $("passwordinfo").innerHTML = "密码不能为空"; $("password").focus(); return false; } if(password.length < 6) { $("passwordinfo").innerHTML = "密码长度必须大于或者等于6"; $("password").focus(); return false; } if(repassword != password) { $("repasswordinfo").innerHTML = "两次输入的密码不一致"; $("repassword").focus(); return false; } if(name == "") { $("nameinfo").innerHTML = "姓名不能为空"; $("name").focus(); return false; } for(var i = 0; i < name.length; i++) { var j = name.subString(i , i+1); if(isNaN(j) == false) { $("nameinfo").innerHTML = '姓名中不能包含数字'; $("name").focus(); return false; } } } </script> </head> <body> <form name="login_form" method="post" onsubmit="return check()"> <div> Email:<input type="text" name="email" id="email"/><span id="emailinfo"></span> </div> <br> <div> 密码:<input type="password" name="password" id="password" /><span id="passwordinfo"></span> </div> <br> <div> 重输密码:<input type="password" name="repassword" id="repassword" /><span id="repasswordinfo"></span> </div> <br> <div> 姓名:<input type="text" name="name" id="name" /><span id="nameinfo"></span> </div> <br> <div> <input type="submit" value="注册" /> </div> </form> </body> </html>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel