本文实例讲述了JavaScript使用简单正则表达式的数据验证功能。分享给大家供大家参考,具体如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Register-reg</title>
<script type="text/javascript" language="javascript">
function checkName() {
var nameElement = document.getElementById("name");
//var regExp = /^(a-z)[^a-z\d_]/i;
var regExp = /[a-zA-Z\d_]/i; // \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。
var regExp2 = /^[A-Za-z]/i;//匹配字符串开始位置为字母
var resultElement = document.getElementById("resName");
if (nameElement.value.match(regExp) && nameElement.value.match(regExp2) && nameElement.value.length >= 6) {
//匹配成功
//会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6!";
return false;
}
}
function checkPwd() {
var pwdElement = document.getElementById("pwd");
var regExp = /[a-zA-Z\d_]/i; // \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。
var regExp2 = /[a-zA-Z]/i; //匹配字母
var regExp3 = /\d/i; //匹配数字
var resultElement = document.getElementById("resPwd");
if (pwdElement.value.match(regExp) && pwdElement.value.match(regExp2) && pwdElement.value.match(regExp3) && pwdElement.value.length >= 6) {
//匹配成功
//密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6!";
return false;
}
}
function checkPwd2() {
var pwdElement = document.getElementById("pwd");
var pwd2Element = document.getElementById("pwd2");
var resultElement = document.getElementById("resPwd2");
if (pwdElement.value == pwd2Element.value) {
//重输密码与之前密码完全匹配
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "密码不一致!";
return false;
}
}
function checkGentle() {
var gentleElement = document.getElementById("gentle");
var resultElement = document.getElementById("resGentle");
if ((gentleElement.value == "男" || gentleElement.value == "女") || (gentleElement.value == "m" || gentleElement.value == "f") || (gentleElement.value == "male" || gentleElement.value == "famale")) {
//性别判断是否在:男、女、male、famale、m、f 之内
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "性别判断是否在:男、女、male、famale、m、f 之内!";
return false;
}
}
function checkAge() {
var ageElement = document.getElementById("age");
var resultElement = document.getElementById("resAge");
if (parseInt(ageElement.value) > 0 && parseInt(ageElement.value) <= 150) {
//如果年龄在0~150之间
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "年龄在0~150之间!";
return false;
}
}
function checkMail() {
var mailElement = document.getElementById("mail");
var regExp = /[^a-z0-9_]/gi; // 匹配非字母、数字、下划线的字符
var regExp2 = /[a-z]/gi; // 匹配字母
var resultElement = document.getElementById("resMail");
if (!mailElement.value.match(regExp)) {//如果出现非字母、数字、下划线的字符
resultElement.innerHTML = "邮箱地址不正确!";
return false;
}
else {
if (mailElement.value.indexOf(".") - mailElement.value.indexOf("@") >= 2) {
resultElement.innerHTML = "";
return true;
}
else {
resultElement.innerHTML = "邮箱地址不正确!";
return false;
}
}
}
function checkTel() {
var telElement = document.getElementById("tel");
var regExp = /\d{7,12}/g;// 匹配7~12位电话数字
var regExp2 = /[^0-9]/g; // 是否有数字以外的字符
var resultElement = document.getElementById("resTel");
if (telElement.value.match(regExp) && telElement.value.length <= 12) {
if (telElement.value.match(regExp2)) {
resultElement.innerHTML = "电话号码为纯数字,且位于7~12位之间!";
return false;
}
else {
resultElement.innerHTML = "";
return true;
}
}
else {
resultElement.innerHTML = "电话号码为纯数字,且位于7~12位之间!"; //!telElement.value.match(regExp2) &&
return false;
}
}
function checkAll() {
if (checkName() && checkPwd() && checkPwd2() && checkGentle() && checkAge() && checkMail() && checkTel()) {
alert("恭喜,填写的信息正确!");
}
else {
alert("错误,请确认填写的信息是否正确!");
}
}
//当窗体加载完成时执行
window.onload = function () {
var inputElements = document.getElementsByTagName("input");
inputElements[0].onblur = function () {
checkName();
}
inputElements[1].onblur = function () {
checkPwd();
}
inputElements[2].onblur = function () {
checkPwd2();
}
inputElements[3].onblur = function () {
checkGentle();
}
inputElements[4].onblur = function () {
checkAge();
}
inputElements[5].onblur = function () {
checkMail();
}
inputElements[6].onblur = function () {
checkTel();
}
inputElements[7].onclick = function () {
checkAll();
}
}
</script>
<style type="text/css">
body{ font-size:16px;
font-weight:600;
font-family:微软雅黑;
line-height:30px;
}
thead{ text-align:center;
}
input{ width:150px;
}
input[type=button]{ height:38px;
font-size:20px;
font-weight:600;
}
ul{ border:1px solid #c3c3c3;
}
li{ list-style-type:square;
}
</style>
</head>
<body>
<form action="" method="post">
<table>
<thead><tr><td colspan="2"><h2>表单验证</h2></td></tr></thead>
<tr><td>会员名:</td><td><input type="text" id="name" /></td><td id="resName"></td></tr>
<tr><td>密码:</td><td><input type="password" id="pwd" /></td><td id="resPwd"></td></tr>
<tr><td>重复密码:</td><td><input type="password" id="pwd2" /></td><td id="resPwd2"></td></tr>
<tr><td>性别:</td><td><input type="text" id="gentle" /></td><td id="resGentle"></td></tr>
<tr><td>年龄:</td><td><input type="text" id="age" /></td><td id="resAge"></td></tr>
<tr><td>电子邮件:</td><td><input type="text" id="mail" /></td><td id="resMail"></td></tr>
<tr><td>联系号码:</td><td><input type="text" id="tel" /></td><td id="resTel"></td></tr>
<tr><td></td><td><input type="button" value="注册" id="checkAll" /></td></tr>
</table>
</form>
<ul>
<li>会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6</li>
<li>密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6</li>
<li>性别判断是否在:男、女、male、famale、m、f 之内</li>
<li>年龄在0~150之间</li>
<li>邮箱地址</li>
<li>电话号码为纯数字,且位于7~12位之间!</li>
</ul>
</body>
</html>
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools./regex/javascript
正则表达式在线生成工具:
http://tools./regex/create_reg
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript正则表达式技巧大全》、《JavaScript替换操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
# JavaScript
# 正则表达式
# 数据
# 验证
# js利用正则表达式检验输入内容是否为网址
# js各种验证文本框输入格式(正则表达式)
# javascript 基于正则表达式的文本框验证代码
# javascript中使用正则表达式进行字符串验证示例
# 详解表单验证正则表达式实例(推荐)
# 正则表达式小脚本(对输入内容进行处理)
# Javascript 正则表达式校验数字的简单实例
# js输入框使用正则表达式校验输入内容的实例
# 下划线
# 不小于
# 密码为
# 年龄在
# 邮箱地址
# 判断是否
# 之内
# 不正确
# 操作技巧
# 相关内容
# 遍历
# 感兴趣
# 数据结构
# 微软
# 给大家
# 表单
# 更多关于
# 所述
# 请确认
相关文章:
建站之星代理如何获取技术支持?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
广州营销型建站服务商推荐:技术优势与SEO优化解析
建站之星24小时客服电话如何获取?
香港服务器部署网站为何提示未备案?
建站上传速度慢?如何优化加速网站加载效率?
智能起名网站制作软件有哪些,制作logo的软件?
油猴 教程,油猴搜脚本为什么会网页无法显示?
制作门户网站的参考文献在哪,小说网站怎么建立?
如何通过VPS搭建网站快速盈利?
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
小型网站建站如何选择虚拟主机?
如何在服务器上三步完成建站并提升流量?
招贴海报怎么做,什么是海报招贴?
盘锦网站制作公司,盘锦大洼有多少5G网站?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
制作农业网站的软件,比较好的农业网站推荐一下?
如何用y主机助手快速搭建网站?
建站OpenVZ教程与优化策略:配置指南与性能提升
Android滚轮选择时间控件使用详解
建站10G流量真的够用吗?如何应对访问高峰?
如何快速搭建安全的FTP站点?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
电商平台网站制作流程,电商网站如何制作?
网站app免费制作软件,能免费看各大网站视频的手机app?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
设计网站制作公司有哪些,制作网页教程?
建站之星如何取消后台验证码生成?
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
如何快速完成中国万网建站详细流程?
建站之星如何实现网站加密操作?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
简单实现Android验证码
企业微网站怎么做,公司网站和公众号有什么区别?
常州企业建站如何选择最佳模板?
建设网站制作价格,怎样建立自己的公司网站?
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
高性价比服务器租赁——企业级配置与24小时运维服务
网站制作壁纸教程视频,电脑壁纸网站?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
建站之星logo尺寸如何设置最合适?
如何在IIS管理器中快速创建并配置网站?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何在自有机房高效搭建专业网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。