常见的js验证

写js脚本时总遇到要写各种验证函数,在这里整理一下省的到处找……


/**
* 判断邮箱是否合法
* @param value
*/
function isValidEmail(value) {
var sReg = /[_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+$/;
if (!sReg.test(value)) {
return false;
}
return true;
}



/**
* 判断一个变量是否为空
* @param value
* @returns {Boolean}
*/
function isNotEmpty(value) {
if (null == value || "" == value) {
return false;
} else {
return true;
}
}

/**
* 判断一个变量是否为空
* @param value
* @returns {Boolean}
*/
function isEmpty(value) {
if (null == value || "" == value) {
return true;
} else {
return false;
}
}



/**
* 判断长度是否合法
* @param val 输入值
* @param maxLength 标准长度
* @returns {Boolean}
*/
function checkLength(val, maxLength) {
var valLength = 0;
for (var i = 0; i < val.length; i++) {
var a = val.charAt(i);
if (a.match(/[^\x00-\xff]/ig) != null) {
valLength += 2;
} else {
valLength += 1;
}
}
if (valLength > maxLength) {
return false;
} else {
return true;
}
}



/**
* 身份证号码校验,返回true=通过校验,false=不通过
* @param object
* @returns (Boolean)
*/
function isIdCard(object) {
var partten = /^[\d]{6}((19[\d]{2})|(200[0-8]))((0[1-9])|(1[0-2]))((0[1-9])|([12][\d])|(3[01]))[\d]{3}[0-9xX]$/;
var idnumber = object;
if (partten.test(idnumber)) {
var truenum = idnumber.substring(0, 17);
var yzm;

nsum = truenum.substring(0, 1) * 7;
nsum = nsum + truenum.substring(1, 2) * 9;
nsum = nsum + truenum.substring(2, 3) * 10;
nsum = nsum + truenum.substring(3, 4) * 5;
nsum = nsum + truenum.substring(4, 5) * 8;
nsum = nsum + truenum.substring(5, 6) * 4;
nsum = nsum + truenum.substring(6, 7) * 2;
nsum = nsum + truenum.substring(7, 8) * 1;
nsum = nsum + truenum.substring(8, 9) * 6;
nsum = nsum + truenum.substring(9, 10) * 3;
nsum = nsum + truenum.substring(10, 11) * 7;
nsum = nsum + truenum.substring(11, 12) * 9;
nsum = nsum + truenum.substring(12, 13) * 10;
nsum = nsum + truenum.substring(13, 14) * 5;
nsum = nsum + truenum.substring(14, 15) * 8;
nsum = nsum + truenum.substring(15, 16) * 4;
nsum = nsum + truenum.substring(16, 17) * 2;
yzm = 12 - nsum % 11;
if (yzm == 10) {
yzm = 'x';
} else if (yzm == 12) {
yzm = '1';
} else if (yzm == 11) {
yzm = '0';
}
if (idnumber.substring(17, 18).toLowerCase() == yzm) {
return true;
}
else{
return false;
}
}
}



/**
* 校验英文姓/名规则,只能为英文字母或空格
* @param enName
* @returns (Boolean)
*/
function isEnName(enName){
var checkENName=/^[A-Za-z ]+$/;
if(checkENName.test(enName)){
return true;
}
else{
return false;
}
}


/**
* 校验输入是否为中文
* @param cnStr
* @returns (Boolean)
*/
function isCn(cnStr){
if(cnStr.length == 0){
return false;
}
var checkChinese=/^([\u4E00-\u9FA5])*$/;
if(checkChinese.test(cnStr)){
return true;
}
else{
return false;
}
}



/**
* 全角自动转换为半角
* @param str
* @returns tmp
*/
function ToCDB(str) {
var tmp = "";
for (var i = 0; i < str.length; i++) {
if (str.charCodeAt(i) > 65248 && str.charCodeAt(i) < 65375) {
tmp += String.fromCharCode(str.charCodeAt(i) - 65248);
}
else {
tmp += String.fromCharCode(str.charCodeAt(i));
}
}
return tmp;
}



/**
* 判断手机号是否合法
* @param value
*/
function isValidMobile(value) {
// 手机号中不全是数字
if (isNaN(value)) {
return false;
}
// 手机号不是11位
if (value.length != 11) {
return false;
}
return true;
}
function isMobilePhone(phoneNo) {
var regMobile=/^0?1(3|4|5|8)\d{9}$/;
if(regMobile.test(phoneNo)) {
return true;
}
else {
return false;
}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值