layer.open({
type: 1,
title: '经济支持人信息',
// skin: 'layui-layer-demo', //样式类名
closeBtn: false,
shift: 7,
shadeClose: true,
content: "<div style='width:350px;'><div style='width:320px;margin-left: 3%;' class='form-group has-feedback'><p>请输入经济支持人姓名</p><input id='brokerName' class='form-control' type='text' name='brokerName' value=''/></div>" +
// "<div style='width:320px;margin-left: 3%;' class='form-group has-feedback'><p>请输入经济支持人证件类型</p><input id='brokerType' class='form-control' type='text' name='brokerType' value=''/></div>" +
"<div style='width:320px;margin-left: 2%;'class='form-group has-feedback'><p>请输入经济支持人证件类型</p><select id='range'name='range' class='form-control' ></select></div>"+ "<div style='width:320px;margin-left: 3%;' class='form-group has-feedback'><p>请输入经济支持人证件号码</p><input id='brokerNo' class='form-control' type='text' name='brokerNo' value=''/></div>" +
"<div style='width:320px;margin-left: 3%;' class='form-group has-feedback'><p>请输入经济支持人电话</p><input id='brokerTel' class='form-control' type='text' name='brokerTel' value=''/></div>" ,
btn: ['确定', '关闭'], // "<div style='width:320px;margin-left: 3%;' class='form-group has-feedback'>
yes: function (index, layero) {
if ($('#brokerName').val() === "") {
layer.tips("请填写经济支持人姓名", $('#brokerName'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return;
}
if ($('#range').val() === "") {
layer.tips("请填写经济支持人证件类型", $('#range'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return;
}
if ($('#brokerNo').val() === "") {
layer.tips("请填写经济支持人证件号码", $('#brokerNo'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return;
}
if ($('#brokerTel').val() === "") {
layer.tips("请填写经济支持人电话", $('#brokerTel'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return;
}
var regTest = /^13[0-9]{1}[0-9]{8}$|15[^4]{1}[0-9]{8}$|18[0-9]{1}[0-9]{8}$|17[0-8]{1}[0-9]{8}$|14[5-9]{1}[0-9]{8}$|16[6]{1}[0-9]{8}$|19[8-9]{1}[0-9]{8}$/;
if (!regTest.test($('#brokerTel').val())) {
layer.tips("请输入正确的手机号", $('#brokerTel'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return ;
}
if (!isIdCard($('#brokerNo').val())) {
layer.tips("请输入正确的证件号码格式", $('#brokerNo'), {
tips: [1, '#1E9FFF'] //还可配置颜色
});
return;
}
layer.close(index);
Toast("success","输入成功");
return;
},
btn2: function (index, layero) {
layer.close(index);
}
});
2.js中 证件号码的校验
/**
-
身份证15位编码规则:dddddd yymmdd xx p dddddd:6位地区编码 yymmdd: 出生年(两位年)月日,如:910215 xx:
-
顺序编码,系统产生,无法确定 p: 性别,奇数为男,偶数为女
-
身份证18位编码规则:dddddd yyyymmdd xxx y dddddd:6位地区编码 yyyymmdd:
-
出生年(四位年)月日,如:19910215 xxx:顺序编码,系统产生,无法确定,奇数为男,偶数为女 y: 校验码,该位数值可通过前17位计算获得
-
前17位号码加权因子为 Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ] 验证位
-
Y = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ] 如果验证码恰好是10,为了保证身份证是十八位,那么第十八位将用X来代替
-
校验位计算公式:Y_P = mod( ∑(Ai×Wi),11 ) i为身份证号码1…17 位; Y_P为校验码Y所在校验码数组位置
*/function isIdCard(idCard) { // 15位和18位身份证号码的正则表达式 var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)| (1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/; // 如果通过该验证,说明身份证格式正确,但准确性还需计算 if (regIdCard.test(idCard)) { if (idCard.length == 18) { var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); // 将前17位加权因子保存在数组里 var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); // 这是除以11后,可能产生的11位余数、 验证码,也保存成数组 var idCardWiSum = 0; // 用来保存前17位各自乖以加权因子后的总和 for (var i = 0; i < 17; i++) { idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i]; } var idCardMod = idCardWiSum % 11;// 计算出校验码所在数组的位置 var idCardLast = idCard.substring(17);// 得到最后一位身份证号码 // 如果等于2,则说明校验码是10,身份证号码最后一位应该是X if (idCardMod == 2) { if (idCardLast == "X" || idCardLast == "x") { //alert("恭喜通过验证啦!"); return true; } else { //alert("身份证号码错误!"); return false; } } else { // 用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码 if (idCardLast == idCardY[idCardMod]) { //alert("恭喜通过验证啦!"); return true; } else { //alert("身份证号码错误!"); return false; } } }else{ return true; } } else { //alert("身份证格式不正确!"); return false;}}