本帖最后由 高新 于 2021-9-8 08:45 编辑
//单元格命名为sfz,身份证正确通过,错误时单元格内容清除,记录不能保存。
//function isCardNo(card) {
var page=Forguncy.Page;
var card1 =page.getCell("sfz");
var card = card1.getValue();
//校验位的检测
var len = card.length;
if (len == '18') {
var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
var cardTemp = 0,
i, valnum;
for (i = 0; i < 17; i++) {
cardTemp += card.substr(i, 1) * arrInt;
}
valnum = arrCh[cardTemp % 11];
if (valnum == card.substr(17, 1)) {
return true;
}
alert("错误");
card1.setValue(""); //清除单元格
}
alert("错误");
card1.setValue("");//清除单元格
//}
|