您好,欢迎来到九壹网。
搜索
您的当前位置:首页如何用JavaScript做表单的校验

如何用JavaScript做表单的校验

来源:九壹网
 一、原理

表单的校验通过输入框中添加onblur事件,输入框失去焦点时调用js函数,js判断输入的值,操作文档,通过innerHTML属性把输入框后面的提示显示出来。

最后在form标签中添加onsubmit事件,点击注册按钮时调用js函数,仅当所有输入框的value符合要求时,返回true,,表单提交。否则返回false表单不提交。

二、图片

三、注意事项

js中创建正则表达式需要用"/^……$/”,^表示从头开始匹配,$表示匹配到最后一个字符。例如var reg=/^\w+[@]\w+[.comn]{3,4}$/;

正则表达式的\w,表示a-z,A-Z,0-9还包括下划线。

通常使用正则的test方法来判断字符串是否与正则匹配,如果返回值为true,则匹配成功,返回false,匹配失败。

四、实现代码

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>使用JavaScript完成表单的校验</title>
 <script>
 //校验用户名
 function checkName(){
 var name=document.getElementById("name").value;
 var nameSpan=document.getElementById("nameSpan")
 //正则表达式判断用户名
 var reg=/^\w+$/;
 if(name.length<1){
 nameSpan.innerHTML="<font size='1' color='red'>用户名不能为空</font>"
 }else if(name.length<=6){
 nameSpan.innerHTML="<font size='1' color='red'>用户名要至少六位</font>"
 }else if(!reg.test(name)){
 nameSpan.innerHTML="<font size='1' color='red'>只能由字母数字下划线组成</font>"
 }else{
 nameSpan.innerHTML="<font size='1' color='red'>符合要求</font>"
 return true;
 }
 }
 //校验密码
 function checkCode(){
 var code=document.getElementById("code").value;
 var codeSpan=document.getElementById("codeSpan")
 if(code==''){
 codeSpan.innerHTML="<font size='1' color='red'>密码不能为空</font>"
 }else if(code.length<6){
 codeSpan.innerHTML="<font size='1' color='red'>密码至少六位</font>"
 }else{
 codeSpan.innerHTML="<font size='1' color='red'>符合要求</font>"
 return true;
 }
 }
 //校验邮箱
 function checkEmail(){
 var email=document.getElementById("email").value;
 var emailSpan=document.getElementById("emailSpan")
 //用正则判断邮箱格式
 var reg=/^\w+[@]\w+[.comn]{3,4}$/;
 if(email==''){
 emailSpan.innerHTML="<font size='1' color='red'>邮箱不能为空</font>"
 }else if(!reg.test(email)){
 emailSpan.innerHTML="<font size='1' color='red'>邮箱格式不正确</font>"
 }else{
 emailSpan.innerHTML="<font size='1' color='red'>符合要求</font>"
 return true;
 }
 }
 //校验所有信息,决定表单是否提交
 function checkForm(){
 if(checkName()&&checkCode()&&checkEmail()){
 return true;
 }
 return false;
 }
 </script>
 </head>
 <body>
 <form id="regist" onsubmit="return checkForm()" action="http://www.baidu.com" method="get" style="margin-left: 520px;width: 400px;padding-left: 20px; height: 280px;border: 1px solid darkgray;">
 <h3>注册表单</h3>
 用户名:<input type="text" id="name" name="username" onblur="checkName()"/>
 <span id="nameSpan" ></span><br/><br />
 密码:<input type="password" id="code" name="password" onblur="checkCode()"/>
 <span id="codeSpan"></span><br/><br />
 邮箱:<input type="text" id="email" name="email" onblur="checkEmail()"/>
 <span id="emailSpan"></span><br/><br />
 <input type="submit" value="注册"/>
 <input type="reset" value="重置"/>
 </form>
 </body>
</html>

更多相关教程请访问 JavaScript视频教程

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务