function isCardNo(card)
{ // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if(reg.test(card) === false)
{
alert("身份证输入不合法");
return false;
}
}
最近的项目中用的需要调用实名认证的接口,实名认证接口价格相比短信而言高了不是几分钱,所以说调用实名认证的条件就要严格把关,因此用到js验证真实姓名与js验证身份证号来减少错误信息调用借口的次数。
进入正题
js验证真实姓名,是用的unicode字符的来进行匹配,而中国人的姓名长度一般都是2-4,所以重复匹配{2,4}次
1.js验证真实姓名
var regName =/^[\u4e00-\u9fa5]{2,4}$/;
if(!regName.test(name)){
alert('真实姓名填写有误');
return false;
}
js验证身份证号,中国的身份证号,一代身份证号是15位的数字,二代身份证都是18位的,最后一位校验位除了可能是数字还可能是’X’或’x’,所以有四种可能性:a.15位数字 b.18位数字 c.17位数字,第十八位是’X’ d.17位数字,第十八位是’x’
2.js验证身份证号
var regIdNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if(!regIdNo.test(idNo)){
alert('身份证号填写有误');
return false;
}