JS简单验证
1.验证是否全为数字
2.验证邮箱
3验证手机号
4.验证身份证号
5.验证时间格式
下面是代码,可直接用,有注释
<html>
<meta charset="utf-8">
<head>
<title></title>
</head>
<script type="text/javascript">
//验证是否全部为数字
function checkNum(){
//获取num的值,并过滤两边多余的空格
var num = document.getElementById('num').value.trim();
//判断是否匹配
if (num.match(/^[0-9]*$/g) == null) {
//不匹配提示,并返回false
document.getElementById('tip1').innerHTML="<font color='red'>不全是数字";
return false;
}else{
//匹配提示,并返回true
document.getElementById('tip1').innerHTML="√";
return true;
}
return check();
} //邮箱验证
function checkEmail(){
var email = document.getElementById('email').value.trim();
//以数字,大/小写字母_.-开头,中间是"@.",以大/小写,数字结尾
if (email.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/g) == null) {
document.getElementById('tip2').innerHTML="<font color='red'>邮箱格式不正确";
return false;
}else{
document.getElementById('tip2').innerHTML="√";
return true;
}
return check();
} //检查手机号
function checkTel(){
var tel = document.getElementById('tel').value.trim();
//手机号以1开头,第二位是34578,再加上9位数字
if (tel.match(/^1[34578]\d{9}$/g) == null) {
document.getElementById('tip3').innerHTML="<font color='red'>手机号必须是11位的数字";
return false;
}else{
document.getElementById('tip3').innerHTML="√";
return true;
}
return check();
} //检查身份证号
function checkIdcard(){
var idcard = document.getElementById('idcard').value.trim();
//身份证号码为15位或者18位,15位时全为数字,18位时前17位为数字,最后一位是校验位,可能为数字或字符X
if (idcard.match(/(^\d{15}$)|(^\d{17}([0-9]|X)$)/g) == null) {
document.getElementById('tip4').innerHTML="<font color='red'>身份证号必须为15或18位";
return false;
}else{
document.getElementById('tip4').innerHTML="√";
return true;
}
return check();
} //校验时间格式
function checkDate(){
var date = document.getElementById('date').value.trim();
//长时间,形如 (2003-12-05 13:04:06)
if (date.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/g) == null) {
document.getElementById('tip5').innerHTML="<font color='red'>时间格式为2017-5-05 13:04:06";
return false;
}else{
document.getElementById('tip5').innerHTML="√";
return true;
}
return check(); } //总判断函数check(),上述所有函数必须全部判断通过,此函数的返回值才是真,一个为假,此式就为假
function check() {
var check =checkNum()&&checkEmail()&&checkTel()&&checkIdcard()&&checkDate();
if (check) {
return true;
}else{
return false;
}
}
</script> <body>
<form action="test.php" method="post" onSubmit="return check();"> 验证是否为数字:<input type="text" id="num" name="num" required ><span id="tip1"></span> <br>
验证邮箱格式<input type="text" id="email" name="email" required ><span id="tip2"></span> <br>
验证手机号<input type="text" id="tel" name="tel" required ><span id="tip3"></span> <br>
验证身份证号<input type="text" id="idcard" name="idcard" required ><span id="tip4"></span> <br>
验证时间格式<input type="text" id="date" name="date" required ><span id="tip5"></span> <br> <input type="submit" value="提交">
</form> </body>
</html>
运行结果如图:
当验证全部通过时,会通过post方式提交给后台!
JS简单验证的更多相关文章
- JS简单验证密码强度
<input type="password" id="password" value=""/><button id=&qu ...
- JS简单验证password强度
<input type="password" id="password" value=""/><button id=&qu ...
- js简单验证码的生成和验证
如何用js生成简单验证码,并验证是否正确的方法 1.html页面如下 <div> <table border="0" cellspacing="5&qu ...
- 超简单的js数字验证
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or ...
- jQuery form插件的使用--用 formData 参数校验表单,验证后提交(简单验证).
Form Plugin API 里提供了很多有用的方法可以让你轻松的处理表单里的数据和表单的提交过程. 测试环境:部署到Tomcat中的web项目. 一.引入依赖js <script src=& ...
- jquery/js实现验证聚焦,失焦
jquery实现验证聚焦,失焦方法: 我还是喜欢用jquery来实现,不管页面中多少个输入框需要实现聚焦,失焦,都公有,我常用的方法是: 遍历该页面中的input框,获取输入框中的val值,当该输入框 ...
- Knockout.js 数据验证之插件版和无插件版
本文我们将介绍使用 Knockout.js 实现一些基本的数据验证.就如我们在标题里提到的,我们会使用两种方法来创建数据验证方法. 使用自定义方法,不需要任何插件 最简单的方法是使用已有的插件 如果你 ...
- 黑马lavarel教程---6、简单验证
黑马lavarel教程---6.简单验证 一.总结 一句话总结: 1.验证的最简单实例:$request的validate方法,验证通过可以继续进行,验证失败就重定向 2.中文提示可以用中文语言包 3 ...
- js简单 图片版时钟,带翻转效果
js简单 图片版时钟,带翻转效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...
随机推荐
- AndroidStudio -- AndroidStuido中找不到cache.properties文件
AndroidStuido中找不到cache.properties文件 报错信息: 16:32:10 Gradle sync failed: C:\Users\***\.gradle\caches\2 ...
- odoo-开发笔记 列表视图 增加记录弹出窗口效果
editable="bottom" 增加该标签的效果是,添加记录的时候,在原列表视图上一行一行添加; 去掉该标签之后,那么增加新记录的时候,会以弹出窗口的方式实现. 如果弹出的窗口 ...
- Python相关在线文档手册地址
Python相关: 五星推荐:http://python.usyiyi.cn/ Python 2.7官方中文文档:http://doc.iplaypy.com/python2/ 英文: htt ...
- PHP的语言构造器
isset和empty看起来像是函数,我们也经常把它当作函数一样使用,但是实际上,它们是语言构造器. php中的语言构造器就相当于C中的预定义宏的意思,它属于php语言内部定义的关键词,不可以被修改, ...
- SQL SERVICE 拆分字符串的表值函数
SQL代码 ALTER FUNCTION [dbo].[SplitToTable]( @SplitString nvarchar(max), @Separator nvarchar(10)=' ')R ...
- Enterprise Library 6 学习笔记
今天是2014年上班第一天,想着今年要做点与往年不同的事情,就从写博客开始吧. 公司的项目一般都用微软的企业库,一直没时间好好研究,第一天上班还不忙,就抽空研究了下.搜索一下,发现这个企业库已经到了6 ...
- Method 'initializationerror' not found.Opening the test classs JUnit4单元测试报错问题解决办法(图文详解)
不多说,直接上干货! 问题现象 今天使用JUnit 4进行单元测试时,测试程序一直运行不起来,报method initializationerror not found错误,如下: 问题分析 网上说版 ...
- 【原】ATI显卡设置双显示器
Ubuntu 12.04系统下加上增加一个显示器后,一直只能镜像显示,或只能用笔记本的屏幕显示,另一个屏幕无法使用了,上网搜索了一下解决办法,通过下面的方法可以解决问题: 编辑/etc/X11/xor ...
- CentOS 6.5 网络服务器功能的实现①:运用bind搭建基本的DNS服务器
何谓DNS服务?简而言之,DNS服务在互联网中可以实现域名解析(把域名转换成网络可以识别的IP地址). 名词解释①:正向解析:域名解析IP地址:反向解析:IP地址解析域名. DNS服务的正/反向区域解 ...
- PHP MYSQL登陆和模糊查询
PHP MYSQL登陆和模糊查询 PHP版本 5.5.12 MYSQL版本 5.6.17 Apache 2.4.9 用的wampserver 一.PHPMYSQL实现登陆: 一共含有两个 ...