function validateIdCard1(){ // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X var cd = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;//定义身份证匹配算法 var legalIdCard = $("#idCard1").val();//获取前台界面字段值 if(legalIdCard != null && legalIdCard !=""){//运用匹配方法直接判断 if (legalIdCard.indexOf("*")>=0){ // 判断身份证是否脱敏,如果脱敏直接跳过 // 身份证已脱敏,直接跳过验证 console.log("身份证已脱敏"); return false; } if (cd.test(legalIdCard) == false) { top.Dialog.alert("身份证号不合法!"); $("#idCard1").val("");//将前台输入值置为空 return false; } } }是否正确
时间: 2024-04-19 16:25:05 浏览: 74
PHP校验15位和18位身份证号的类封装
根据您提供的修改后的代码,首先使用正则表达式 `cd` 对身份证号进行匹配验证。如果身份证号不为空且不符合15位或18位且最后一位不是数字或字符X的格式,则弹出提示错误信息,并将输入框中的值置为空。
接下来,通过 `legalIdCard.indexOf("*")>=0` 判断身份证号是否已经脱敏。如果身份证号中包含星号(*),则认为身份证已脱敏,直接跳过验证。
根据代码逻辑来看,这段代码可以实现对身份证号的合法性验证,并且会判断身份证号是否已经脱敏。如果身份证已脱敏,则不会执行后续的验证操作。
需要注意的是,这段代码只是进行了简单的格式和长度验证,并不能保证输入的身份证号是真实有效的。在实际使用中,还需要根据具体的业务需求进行更加严格的验证。
阅读全文