【第22期】观点:IT 行业加班,到底有没有价值?

JS身份证号码验证函数 支持带x的号码

原创 2007年09月27日 14:30:00
<script type="text/javascript">
alert(isIdCardNo("440781197007220512"));
//--身份证号码验证-支持新的带x身份证
function isIdCardNo(num) 
{
    var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
    var error;
    var varArray = new Array();
    var intValue;
    var lngProduct = 0;
    var intCheckDigit;
    var intStrLen = num.length;
    var idNumber = num;    
    // initialize
    if ((intStrLen != 15) && (intStrLen != 18)) {
        //error = "输入身份证号码长度不对!";
        //alert(error);
        //frmAddUser.txtIDCard.focus();
        return false;
    }    
    // check and set value
    for(i=0;i<intStrLen;i++) {
        varArray[i] = idNumber.charAt(i);
        if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {
            //error = "错误的身份证号码!.";
            //alert(error);
            //frmAddUser.txtIDCard.focus();
            return false;
        } else if (i < 17) {
            varArray[i] = varArray[i]*factorArr[i];
        }
    }
    if (intStrLen == 18) {
        //check date
        var date8 = idNumber.substring(6,14);
        if (checkDate(date8) == false) {
            //error = "身份证中日期信息不正确!.";
            //alert(error);
            return false;
        }        
        // calculate the sum of the products
        for(i=0;i<17;i++) {
            lngProduct = lngProduct + varArray[i];
        }        
        // calculate the check digit
        intCheckDigit = 12 - lngProduct % 11;
        switch (intCheckDigit) {
            case 10:
                intCheckDigit = 'X';
                break;
            case 11:
                intCheckDigit = 0;
                break;
            case 12:
                intCheckDigit = 1;
                break;
        }        
        // check last digit
        if (varArray[17].toUpperCase() != intCheckDigit) {
            //error = "身份证效验位错误!...正确为: " + intCheckDigit + ".";
            //alert(error);
            return false;
        }
    } 
    else{        //length is 15
        //check date
        var date6 = idNumber.substring(6,12);
        if (checkDate(date6) == false) {
            //alert("身份证日期信息有误!.");
            return false;
        }
    }
    //alert ("Correct.");
    return true;
}

function checkDate(date)
{
    return true;
}
</script>
 
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

javascript身份证号码验证函数支持带x .

//--身份证号码验证-支持新的带x身份证 function isIdCardNo(num)  {     var factorArr = new Array(7,9,10,5,8,4,2,1,...

javascript身份证号码验证函数支持带x

//--身份证号码验证-支持新的带x身份证function isIdCardNo(num) {    var<spa

欢迎关注CSDN程序人生公众号

关注程序员生活,汇聚开发轶事。

javascript身份证号码验证函数支持带x

//--身份证号码验证-支持新的带x身份证functionisIdCardNo(num){var<span style=

javascript身份证号码验证函数支持带x

//--身份证号码验证-支持新的带x身份证function isIdCardNo(num) {    var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,...

JS身份证号码验证函数 支持带x的号码

&lt;script type="text/javascript"&gt; alert(isIdCardNo("440781197007220512")); //--身份证号码验证-支持新
  • itshu
  • itshu
  • 2007-09-27 14:30
  • 1672
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)