....

//验证身份证格式
function onIDCardsValidation(e) {
if (e.isValid) {
var pattern = /\d*/;
if (!(e.value==undefined||e.value==null||e.value=="")&&!(e.value.length >= 15 && e.value.length <= 18 && pattern.test(e.value))) {
e.errorText = "请输入正确的身份证号码";
e.isValid = false;
}
}
}
//验证手机号码格式
function onPhoneValidation(e) {
if (e.isValid) {
var myreg=/^[1][3,4,5,7,8][0-9]{9}$/;if (!(e.value==undefined||e.value==null||e.value=="")&&!(e.value.length == 11 && pattern.test(e.value))) {
e.errorText = "请输入正确的手机号码";
e.isValid = false;
}
}
}
//验证邮政编码格式
function onPostcodesValidation(e) {
if (e.isValid) {
var pattern = /\d*/;
if (!(e.value==undefined||e.value==null||e.value=="")&&!(e.value.length == 6 && pattern.test(e.value))) {
e.errorText = "请输入正确邮政编码";
e.isValid = false;
}
}
}
//验证年龄格式
function onAgeValidation(e) {
if (e.isValid) {
var pattern = /\d*/;
if (!(e.value==undefined||e.value==null||e.value=="")&&!(e.value.length < 3 && pattern.test(e.value))) {
e.errorText = "年龄须<=99";
e.isValid = false;
}
}
}
//验证由字母数字组成的数据格式
function onEnglishAndNumberValidation(e) {
if (e.isValid) {
if (isEnglishAndNumber(e.value) == false) {
e.errorText = "必须输入英文+数字";
e.isValid = false;
}
}
}
//验证由中文组成的数据格式
function onChineseValidation(e) {
if (e.isValid) {
if (isChinese(e.value) == false) {
e.errorText = "必须输入中文";
e.isValid = false;
}
}
} /* 是否英文+数字 */
function isEnglishAndNumber(v) { var re = new RegExp("^[0-9a-zA-Z\_]+$");
if (re.test(v)) return true;
return false;
} /* 是否汉字 */
function isChinese(v) {
var re = new RegExp("^[\u4e00-\u9fa5]+$");
if (re.test(v)) return true;
return false;
}

---

// 证件验证  并往出生日期,性别设值
function checkIdCard(e){ //mini-textbox onblur // 失去焦点时发生
//获取输入身份证号码
var UUserCard = e.value; if(UUserCard!=""){
//用正则表达式检查身份证号码是否有误!
var re = /^\d{6}(((19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}([0-9]|x|X))|(\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])\d{3}))$/;
if(!re.test(UUserCard)){
//alert("身份证号码有误,请重新填写!");
mini.alert("号码有误,请重新填写!");
//form.setIsValid(false);
//mini.get("id_card").focus();
return false;
}else{
if(UUserCard.length==15){
UUserCard=C15ToC18(UUserCard);
}
//获取性别
if (parseInt(UUserCard.substr(16, 1)) % 2 == 1) {
//是男则执行代码 ..
//document.getElementById("man").checked = true;
mini.get("sex").setValue("1");
//是女则执行代码 ..
} else {
mini.get("sex").setValue("2");
//document.getElementById("woman").checked = true; }
var myDate = new Date();
var month = myDate.getMonth() + 1;
var day = myDate.getDate();
var age = myDate.getFullYear() - UUserCard.substring(6, 10) - 1;
if (UUserCard.substring(10, 12) < month || UUserCard.substring(10, 12) == month && UUserCard.substring(12, 14) <= day) {
age++;
}
//年龄 age
//document.getElementById("age").value= age;
mini.get("age").setValue(age); //判断出生日期
if(UUserCard.length==15){
var year = "19"+UUserCard.substring(6,8)+"-"+UUserCard.substring(8,10)+"-"+
UUserCard.substring(10,12);
//document.getElementById("year").value = year;
mini.get("birthdate").setValue(year);
} if(UUserCard.length==18){
var year = UUserCard.substring(6,10)+"-"+UUserCard.substring(10,12)+"-"+
UUserCard.substring(12,14);
//document.getElementById("year").value = year;
mini.get("birthdate").setValue(year);
}
}
var sfz = '';
var sfzhb = UUserCard.split("")[UUserCard.length-1];
var pattern2 = new RegExp("[A-Za-z]+");
if(pattern2.test(sfzhb)){ sfzhb=sfzhb.toUpperCase();
var sfzqb= UUserCard.split("").slice(0,-1);
for(var i=0;i<sfzqb.length;i++){
sfz +=sfzqb[i];
}
sfz +=sfzhb;
mini.get("id_card").setValue(sfz);
} }
// console.log(e.value);
}

js 正则表达式 验证与限制的更多相关文章

  1. JS正则表达式验证账号、手机号、电话和邮箱

    JS正则表达式验证账号.手机号.电话和邮箱 效果体验:http://keleyi.com/keleyi/phtml/jstexiao/15.htm 验证帐号是否合法 验证规则:字母.数字.下划线组成, ...

  2. js正则表达式验证

    有时候会要验证自己写的正则表达式是否正确 所以写了这个小东西: demo:js正则表达式验证 html: <h3>绿色表示匹配,红色表示不匹配</h3> <label&g ...

  3. js正则表达式验证(化繁为简)

    以前用js写正则表达式验证,每一个文本框后面都要添加一个onblur函数,验证的信息少,也没体会到有多繁琐,这次项目中的页面比较多,页面中的信息也比较多,如果每个文本框都加一个验证函数的话,js验证代 ...

  4. js正则表达式验证字符长度

    原理,就是把一个汉字替换为两个字母,来实现长度验证. //js正则验证字符长度 第一种:直接输出长度 alert('1sS#符'.replace(/[^\x00-\xff]/g, 'AA').leng ...

  5. js正则表达式验证端口范围(0-65535)

    javascript正则表达式验证IP地址的端口合法性 if (!(/^[1-9]\d*$/.test(port) && 1 <= 1 * port && 1 * ...

  6. js正则表达式验证大全

    /判断输入内容是否为空    function IsNull(){        var str = document.getElementById('str').value.trim();      ...

  7. js 正则表达式验证

    验证数字的正则表达式集 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9 ...

  8. js正则表达式验证大全--转载

    转载来源:http://www.cnblogs.com/hai-ping/articles/2997538.html#undefined //判断输入内容是否为空 function IsNull(){ ...

  9. JS正则表达式验证数字

    <script type="text/javascript"> function validate(){ var reg = new RegExp("^[0- ...

  10. JS --正则表达式验证、实战之邮箱模式

     JS验证格式:提高用户体验,验证文本. 需要防止程序员的代码结构更改攻击,因为web段的代码有可能会被更改,更改后JS有可能会验证不住那么,C#端在JS段通过验证的情况下,还需要进行二次验证 < ...

随机推荐

  1. Winform 实现图片轮播(解决Image.FromFile内存不足)

    前言 最近项目中需要在winform中做一个类似于网页那种轮播的效果,这里做下记录. 实现 整体的实现思路如下: 读取图片文件夹. 建立一个集合存储Image对象. 定时器定时更换PictrueBox ...

  2. 使用Golang搭建gRPC服务提供给.NetCore客户端调用

    目录 gRPC概述 RPC gRPC又是什么呢 安装 Golang IDE(Goland) Protocol Buffer 下载Protocal Buffer 配置Protocal Buffer编译器 ...

  3. Cookie实现是否第一次登陆/显示上次登陆时间

    Cookie实现是否第一次登陆/显示上次登陆时间 最近刚好看到Cookie这方面知识,对Servlet部分知识已经生疏,重新翻出已经遗弃角落的<JavaWeb开发实战经典>,重新温习了Co ...

  4. JVM 面试题,安排上了!!!

    肝了一篇非常硬核的 JVM 基础总结,写作不易,小伙伴们赶紧点赞.转发安排起来! 原文链接 据说看完这篇 JVM 要一小时 JVM 的主要作用是什么? JVM 就是 Java Virtual Mach ...

  5. 从零搭建基于webpack的Electron-Vue3项目(1)——基于webpack的Vue3项目搭建

    从零搭建基于webpack的Electron-Vue3项目(1)--基于webpack的Vue3项目搭建 前言 本篇文章内容,主要是基于webpack的Vue3项目开发环境进行搭建,暂时还不涉及到El ...

  6. 重庆邮电大学第十一届ACM程序设计竞赛-网络选拔赛 C题

    1008: 偷袭 时间限制: 1.000 sec 内存限制: 128 MB 武林要以和为贵,张麻子不讲武德来偷袭马老师的亲传弟子. 马老师有n个亲传弟子,每个弟子有一个武力值a[i]. n个弟子中只有 ...

  7. 好奇!仅 13kB 大小的游戏,源码长啥样?

    这个马赛克风格的表情正好 13Kb,有人竟然能用一个表情大小的空间,制作个游戏出来.我就不信这么点的地儿,能写出个花来?游戏能好玩吗?因为这些游戏点开就能玩,我抱着试一试的心态把玩了一会. 事实证明是 ...

  8. C++ 与 Visual Studio 2019 和 WSL

    Visual Studio 使用 C++ 的 Linux 开发(WSL) https://devblogs.microsoft.com/cppblog/c-with-visual-studio-201 ...

  9. linux性能优化基础——iommu相关配置

    此篇文档介绍了IOMMU相关的信息: https://blog.chaosjohn.com/Check-VT-D-or-IOMMU-under-Linux.html iommu和vt-d都是io半虚拟 ...

  10. for...in和Object.keys()区别

    区别: for in 用来枚举对象的属性,某些情况下,可能按照随机顺序遍历数组元素 object.keys() 可以返回对象属性为元素的数组,数组中属性名顺序和for in比那里返回顺序一样 ---f ...