//座机电话验证(支持分机)
function chekeTel(tel) {
    var Tel = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/;
    if (Tel.test(tel)) {
        return true;
    } else {
        return false;
    }
}
//手机号码验证
function chekePhone(phone) {
    var mobile = /^(1+\d{10})$/;

    if (mobile.test(phone)) {
        return true;
    }
    else {
        return false;
    }
}
//电子邮箱验证
function chekemail(temail) {
    var pattern = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
    if (pattern.test(temail)) {
        return true;
    }
    else {
        return false;
    }
}
//应用于注册用户名(规则:4-16个字符之间(包括4、16),字母开头,数字,下划线)
function chekeUserName(userName) {
    var UserName = /^[a-zA-Z][a-zA-Z0-9_-]{4,16}$/;
    if (UserName.test(userName)) {
        return true;
    } else {
        return false;
    }
}
//检查是否为正整数
function isPositiveInt(a) {
    var reg = /^\d+$/;
    return reg.test(a);
}
//检查是否数字(不包括小数点)
function isNum(a) {
    var reg = /^[0-9]*$/;
    return reg.test(a);
}
//检查是否数字(包括小数点)
function isNum2(a) {
    return !isNaN(a);
}
//检查有两位小数的正实数
function isDecimal2(a) {
    var reg = /^[0-9]+(.[0-9]{2})?$/;
    return reg.test(a);
}
//检查小数点后仅一位
function isDecimal1(a) {
    var reg = /^(\d+\.\d{1,1}|\d+)$/;
    return reg.test(a);
}
//检查有1-3位小数的正实数
function isDecimal1_3(a) {
    var reg = /^[0-9]+(.[0-9]{1,3})?$/;
    return reg.test(a);
}

//仅汉字和英文
function isChinaAZ(a) {
    var reg = /([\u4e00-\u9fa5]|[a-zA-Z])$/;
    return reg.test(a);
}
//仅汉字和数字
function isChinaInt(a) {
    var reg = /([\u4e00-\u9fa5]|[0-9])$/;
    return reg.test(a);
}
//仅数字和英文
function isIntAZ(a) {
    var reg = /([0-9]|[a-zA-Z])$/;
    return reg.test(a);
}
//非法字符
function isIllegal(a) {
    var reg = /[^?!@#$%&*()]/;
    return reg.test(a);
}
//身份证号码(数字、字母x结尾)
function isIDCode(a) {
    var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
    return reg.test(a);
}
//日期格式(xxxx-xx-xx比较简单的验证)
function isDate(a) {
    var reg = /^\d{4}(-|\/)\d{1,2}(-|\/)\d{1,2}/;
    return reg.test(a);
}
//XML文件
function isXML(a) {
    var reg = /^[a-zA-Z0-9_-]+\.[x|X][m|M][l|L]$/;
    return reg.test(a);
}
//腾讯QQ号从10000开始
function isQQ(a) {
    var reg = /[1-9][0-9]{4,}/;
    return reg.test(a);
}
//邮编
function isZipCode(a) {
    var reg = /[1-9]\d{5}(?!\d)/;
    return reg.test(a);
}
//IP地址
function isIP(a) {
    var reg = /\d+\.\d+\.\d+\.\d+/;
    return reg.test(a);
}

//仅数字
function KeyInt(val) {
    val.value = val.value.replace(/[^\d]/g, '');
}
//仅数字和-(适用于区号-电话-分机)
function KeyIntAnd_(val) {
    val.value = val.value.replace(/[^0-9-_]/g, '');
}
//仅汉字
function KeyChina(val) {
    val.value = val.value.replace(/[^\u4E00-\u9FA5]/g, '');
}
//仅英文
function KeyAZ(val) {
    val.value = val.value.replace(/[^a-zA-Z]/g, '');
}
//去掉非法字符
function KeyTrim(val) {
    val.value = val.value.replace(/^s+|s+$/g, '');
}

常用javascript表单验证方法的更多相关文章

  1. 常用JS表单验证方法

    /*输入:str返回:如果全是空返回true,否则返回false*/function isNull(str) {if (str == "") return true;var reg ...

  2. JavaScript表单验证和正则表达式

    JavaScript表单验证 分为四类: 1.非空验证 常用于用户名等 2.相等验证 常用于验证两次输入的密码 3.范围验证 常用于年龄等 4.正则验证 用于手机号,邮箱号等 以下是实例: <! ...

  3. 15个最佳的 JavaScript 表单验证库

    客户端验证在任何项目都是不够的,因为 JavaScript 可以直接忽略,人们可以提交请求到服务器. 然而这并不意味着客户端验证都没必要了,很多时候我们需要在用户提交到服务器之前给予提示.JavaSc ...

  4. JavaScript表单验证年龄

    JavaScript表单验证年龄,判断一个输入量是否符合年龄,通过正则表达式实现. //检查年龄 function isAge(str){ var mydate=new Date; var now=m ...

  5. 前端工具 - 15个最佳的 JavaScript 表单验证库

    客户端验证在任何项目都是不够的,因为 JavaScript 可以直接忽略,人们可以提交请求到服务器. 然而这并不意味着客户端验证都没必要了,很多时候我们需要在用户提交到服务器之前给予提示.JavaSc ...

  6. JavaScript 表单验证入门

    JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 被 JavaScript 验证的这些典型的表单数据有: 用户是否已填写表单 ...

  7. JavaScript 表单验证 案例

    JavaScript 表单验证 案例 版权声明:未经授权,严禁转载!   编写 HTML 文件,搭建主体界面 <html> <head> <meta charset=&q ...

  8. 10个强大的Javascript表单验证插件推荐

    创建一个JavaScript表单验证插件,可以说是一个繁琐的过程,涉及到初期设计.开发与测试等等环节.实际上一个优秀的程序员不仅是技术高手,也应该是善假于外物的.本文介绍了10个不错的JavaScri ...

  9. JavaScript 表单验证正则表达式大全

    JavaScript 表单验证正则表达式大全[转载] 匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[ ...

随机推荐

  1. 洛谷 [P4016] 负载平衡问题

    贪心做法 第一眼看见觉得和均分纸牌差不多,然而因为这是环形的,并不能用均分纸牌的方法做,但是均分纸牌的思想仍然适用 首先我们假设平均数为sum1. 那么对于第1个人,我们假设他给第N个人K个糖果, 第 ...

  2. [Sdoi2017]树点涂色 [lct 线段树]

    [Sdoi2017]树点涂色 题意:一棵有根树,支持x到根染成新颜色,求x到y颜色数,求x子树里点到根颜色数最大值 考场发现这个信息是可减的,但是没想到lct 特意设计成lct的形式! 如何求颜色数? ...

  3. POJ Building roads [二分答案 2SAT]

    睡觉啦 #include <iostream> #include <cstdio> #include <cstring> #include <algorith ...

  4. 2018/1/19 Netty学习笔记(一)

    这段时间学了好多好多东西,不过更多是细节和思想上的,比如分布式事物,二次提交,改善代码质量,还有一些看了一些源码什么的; 记录一下真正的技术学习,关于Netty的学习过程; 首先说Netty之前先说一 ...

  5. 《CSS核心技术详解》

    前言 看似简单的CSS,却暗藏玄机,那是我们摸爬滚打好长时间后悟出的真理. 在很长的一段时间里,我并没有重视CSS,觉得CSS很简单,无非就是一些属性:后来才发现自己小看了CSS,对CSS的了解实在是 ...

  6. 分布式服务dubbo使用

    SOA 服务框架dubbo 节点角色说明: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发现的注册中心. Monitor: ...

  7. NSIS 设置系统变量

    定义 ; include for some of the windows messages defines !include "winmessages.nsh" ; HKLM (a ...

  8. 网页版仿Excel效果组件--handsontable拓展运用

    引言(祝看官们新年万事大吉) 前段时间项目需要实现网页版的excel表格功能,瞬间就想到了handsontable,为什么呢?理由如下:该UI组件功能齐全多样,展示效果也更贴近bootstrap风格, ...

  9. Activiti 中的ACT_RU_TASK表中的EXECUTION_ID和PROC_INST_ID区别

    当你的流程图为单向的时候则EXECUTION_ID和PROC_INST_ID是一样的 这种的流程图的话是一样的 这种的话就到支流是不一样的由于在节点处进行了分支,导致这个有三个方案.导致里面的分支分离 ...

  10. Django 学习笔记

    day 1 : 一.web 框架本质: 1.http 建立在tcp 之上:一次互通后断开,无状态,短链接 请求头: b'GET / HTTP/1.1 Host: 127.0.0.1:8080 Conn ...