JavaScript 正则表达式实现表单完整验证
作者:闭包旅人时间:2026-10-21 23:14:19浏览:204
本文提供基于 JavaScript 和正则表达式的完整表单验证示例。通过 HTML 构建基础界面,利用 CSS 美化样式,并编写 JS 脚本在用户输入时实时进行格式校验,包括非空检查、邮箱及手机号匹配。代码包含完整的 HTML、CSS 和 JS 实现,可直接用于前端开发中的基础验证场景。
JS正则表达式表单验证示例
效果展示如下:

图(1)初始图

图(2)填入信息校验
具体实现代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>完整验证表单</title>
<style type="text/css">
*{margin: 0;padding: 0;list-style:none;}
body{background:#ccc;}
.demo{width:400px;padding:40px;background:#efefef;border:solid 1px #666;margin:100px auto 0;line-height:40px;}
label{display:inline-block;width:20%;}
input{width:60%;}
</style>
</head>
<body>
<div class="demo">
<ul>
<li>
<label for="iptqq">Q Q:</label>
<input type="text" id="iptqq">
<span></span>
</li>
<li>
<label for="iptPhone">手机:</label>
<input type="text" id="iptPhone">
<span></span>
</li>
<li>
<label for="iptEmil">邮箱:</label>
<input type="text" id="iptEmil">
<span></span>
</li>
<li>
<label for="iptNum">座机:</label>
<input type="text" id="iptNum">
<span></span>
</li>
<li>
<label for="iptName">姓名:</label>
<input type="text" id="iptName">
<span></span>
</li>
</ul>
</div>
</body>
<script type="text/javascript">
(function(window){
function $(id){
return document.getElementById(id);
};
// 获取对象
var iptqq = $("iptqq"),iptPhone = $("iptPhone"),iptEmil = $("iptEmil"),iptNum = $("iptNum"),iptName = $("iptName");
// 正则验证表达式
// 验证座机
var rxNum = /^0[0-9]{2,3}-[0-9]{7,8}$/;
// 验证QQ
var rxqq = /^[1-9][0-9]{4,10}$/;
// 验证手机
var rxPhone = /^(13[0-9]|15[012356789]|18[0-9]|17[678]|14[57])[0-9]{8}$/;
// 验证邮箱
var rxEmil = /^\w+@\w+\.\w+$/;
// 验证姓名
var rxName = /^[\u4E00-\u9FA5]{2,}$/
// 验证座机
cation(iptNum,rxNum);
// 验证QQ
cation(iptqq,rxqq);
// 验证手机号
cation(iptPhone,rxPhone);
// 验证邮箱
cation(iptEmil,rxEmil);
// 验证姓名
cation(iptName,rxName);
// 封装验证函数
function cation(element,regExp){
element.onblur = function(){
var txt = this.value;
if( regExp.test( txt ) ){
this.nextElementSibling.innerHTML = "正确"
this.nextElementSibling.style.color = "green";
}else{
this.nextElementSibling.innerHTML = "错误"
this.nextElementSibling.style.color = "red";
}
}
}
})(window)
</script>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持本站!
作者最新文章
什么时候该用JS构造器:与工厂模式、字面量的选择对比
2026-11-05 16:18:22
推荐几款轻量级JS照片墙开源库及对比
2026-11-05 15:56:19
JavaScript递归写法有哪些常见陷阱及避免方法
2026-11-05 14:53:38
JS数组浅拷贝与深拷贝怎么选?场景与方法总结
2026-11-05 14:41:02
p5.js 中 setup() 和 draw() 函数的执行机制详解
2026-11-05 12:32:38
