视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
如何用JavaScript做表单的校验
2020-11-27 21:38:44 责编:小采
文档
 一、原理

表单的校验通过输入框中添加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视频教程

下载本文
显示全文
专题