﻿
//checkbox全选
//obj checkbox控件对象
function CheckAll(obj, checked) {
    var a = obj;
    var k = 0;
    if (obj) {
        for (var i = 0; i < a.length; i++) {
            a[i].checked = checked;
            k = k + 1;
        }

        if (k == 0)//表明obj为单一控件
        {
            a.checked = checked;
        }
    }
}
// JScript 文件
//选择指定ID的选择框
function checkall(ckname) {
    var a = document.getElementsByTagName("input");
    for (var i = 0; i < a.length; i++) {
        if (a[i].id == ckname) {
            if (a[i].checked == true) {
                for (var i = 0; i < a.length; i++) {
                    if (a[i].id == ckname) {
                        if (a[i].type == "checkbox") a[i].checked = false;
                    }
                }
            }
            else {
                for (var i = 0; i < a.length; i++) {
                    if (a[i].id == ckname) {
                        if (a[i].type == "checkbox") a[i].checked = true;
                    }
                }
                break;
            }
        }
    }
    return;
}

//警示窗体
//msg 需要显示的信息 
//type= -1信息提示窗体
//type= -2信息确认窗体
function WarnMsg(msg, type) {
    if (type == -1) {
        alert(msg);
    }
    else if (type == -2) {
        return confirm(msg);
    }
}


//关闭窗口方式
//type = -1直接关闭刷
//type = -2 新父窗口后关闭
function WinClose(type) {
    if (type == -1) {
        window.close();
    }
    else if (type == -2) {
        try {
            window.opener.location.reload();
        }
        catch (err) {

        }
        window.close();
    }
}

//打开窗口方式
//url:地址
//iWidth:宽度
//iHeight:高度
//type =-1一般窗口 －2模式窗口
function WinOpen(url, iWidth, iHeight, type) {
    if (type == -1) {
        var iTop = (window.screen.height - iHeight) / 2;
        var iLeft = (window.screen.width - iWidth) / 2;
        if (iWidth == 0 && iHeight == 0) {
            window.open(url);
        }
        else {
            window.open(url, "", "Scrollbars=yes,Toolbar=no,Location=no,Direction=no,Resizable=yes,status=no,Width=" + iWidth + " ,Height=" + iHeight + ",top=" + iTop + ",left=" + iLeft)
        }
    }
    else if (type == -2) {
        var rv = window.showModalDialog(url, window, "dialogWidth:" + iWidth + "px;status:no,dialogHeight:" + iHeight + "px;help:0" + ";status:0;scroll:1:0;help:0;");
        return rv;
    }
}



//打开窗口方式
//url:地址
//iWidth:宽度
//iHeight:高度
//type =-1一般窗口 －2模式窗口
//scrolltype=0无滚动条 1有滚动条
function WinOpenByScroll(url, iWidth, iHeight, scrolltype) {
    var iTop = (window.screen.height - iHeight) / 2;
    var iLeft = (window.screen.width - iWidth) / 2;
    if (scrolltype == "0") {
        window.open(url, "", "Scrollbars=no,Toolbar=no,Location=no,Direction=no,Resizable=yes,status=no,Width=" + iWidth + " ,Height=" + iHeight + ",top=" + iTop + ",left=" + iLeft)
    }
    else {
        window.open(url, "", "Scrollbars=yes,Toolbar=no,Location=no,Direction=no,Resizable=yes,status=no,Width=" + iWidth + " ,Height=" + iHeight + ",top=" + iTop + ",left=" + iLeft)
    }
}

//列表中信息显示隐藏函数
function HiddInfo(imgName, obj) {
    var newObj = document.getElementById(obj);
    if (newObj.style.display == 'none') {
        newObj.style.display = '';
        imgName.className = "expContent";
    }
    else {
        newObj.style.display = 'none';
        imgName.className = "colContent";
    }
}

//用于树行菜单中的级联删除
function postBackByObject() {
    var o = window.event.srcElement;

    if (o.tagName == "INPUT" && o.type == "checkbox") {
        __doPostBack("", "");
    }

}

//打开窗口方式
//url:地址
//iWidth:宽度
//iHeight:高度
//type =-1一般窗口 －2模式窗口
function Open(url, iWidth, iHeight) {
    var iTop = (window.screen.height - iHeight) / 2;
    var iLeft = (window.screen.width - iWidth) / 2;
    window.open(url, "", "Scrollbars=yes,Toolbar=no,Location=no,Direction=no,Resizable=yes,status=no,Width=" + iWidth + " ,Height=" + iHeight + ",top=" + iTop + ",left=" + iLeft)
}


function isChinaIDCard(StrNo) {
    StrNo = StrNo.toString();
    if (StrNo.length == 18 || StrNo.length == 15) {
        return true;
    }
    else {
        alert("身份证号码位数不正确");
        return false;
    }

    //if (StrNo.length==18)
    //{
    //      var a,b,c
    //      if (!isInteger(StrNo.substr(0,17))) {return false}
    //      a=parseInt(StrNo.substr(0,1))*7+parseInt(StrNo.substr(1,1))*9+parseInt(StrNo.substr(2,1))*10;
    //      a=a+parseInt(StrNo.substr(3,1))*5+parseInt(StrNo.substr(4,1))*8+parseInt(StrNo.substr(5,1))*4;
    //      a=a+parseInt(StrNo.substr(6,1))*2+parseInt(StrNo.substr(7,1))*1+parseInt(StrNo.substr(8,1))*6; 
    //      a=a+parseInt(StrNo.substr(9,1))*3+parseInt(StrNo.substr(10,1))*7+parseInt(StrNo.substr(11,1))*9; 
    //      a=a+parseInt(StrNo.substr(12,1))*10+parseInt(StrNo.substr(13,1))*5+parseInt(StrNo.substr(14,1))*8; 
    //      a=a+parseInt(StrNo.substr(15,1))*4+parseInt(StrNo.substr(16,1))*2;
    //      b=a%11;

    //      if (b==2) //最后一位为校验位
    //      {
    //      c=StrNo.substr(17,1).toUpperCase(); //转为大写X
    //      }
    //      else
    //      {
    //      c=parseInt(StrNo.substr(17,1));
    //      }

    //      switch(b)
    //      {
    //      case 0: if ( c!=1 ) {alert("身份证好号码校验位错:最后一位应该为:1");return false;}break;
    //      case 1: if ( c!=0 ) {alert("身份证好号码校验位错:最后一位应该为:0");return false;}break;
    //      case 2: if ( c!="X") {alert("身份证好号码校验位错:最后一位应该为:X");return false;}break;
    //      case 3: if ( c!=9 ) {alert("身份证好号码校验位错:最后一位应该为:9");return false;}break;
    //      case 4: if ( c!=8 ) {alert("身份证好号码校验位错:最后一位应该为:8");return false;}break;
    //      case 5: if ( c!=7 ) {alert("身份证好号码校验位错:最后一位应该为:7");return false;}break;
    //      case 6: if ( c!=6 ) {alert("身份证好号码校验位错:最后一位应该为:6");return false;}break;
    //      case 7: if ( c!=5 ) {alert("身份证好号码校验位错:最后一位应该为:5");return false;}break;
    //      case 8: if ( c!=4 ) {alert("身份证好号码校验位错:最后一位应该为:4");return false;}break;
    //      case 9: if ( c!=3 ) {alert("身份证好号码校验位错:最后一位应该为:3");return false;}break;
    //      case 10: if ( c!=2 ){alert("身份证好号码校验位错:最后一位应该为:2");return false}
    //      }
    //      }
    //else //15位身份证号
    //      {
    //      if (!isInteger(StrNo)) {alert("身份证号码错误,前15位不能含有英文字母！");return false} 
    //      }

    //switch(StrNo.length){
    //case 15: 
    //         if (isValidDate("19"+StrNo.substr(6,2),StrNo.substr(8,2),StrNo.substr(10,2)))
    //             {return true;}
    //         else
    //             {return false;}
    //case 18: 
    //         if (isValidDate(StrNo.substr(6,4),StrNo.substr(10,2),StrNo.substr(12,2)))
    //             {return true;}
    //         else
    //             {return false;}
    //}
    //alert("输入的身份证号码必须为15位或者18位！");
    //return false
}

function isValidDate(iY, iM, iD) {

    return true;
    //var a=new Date(iY,iM,iD);

    var a = new Date(iY + "/" + iM + "/" + iD);
    var y = a.getFullYear();
    var m = a.getMonth() + 1;
    var d = a.getDate();

    //     alert(y+"-"+iY);
    //     alert(m+"-"+iM);
    //     alert(d+"-"+iD);
    //     
    if (y != iY || m != iM || d != iD) {
        window.alert('身份证号码内日期错误！');
        return false;
    }

    return true
}

function isInteger(str) {
    //if (/[^\d]+$/.test(str)){
    if (!/^\d+$/.test(str)) {
        return false;
    }
    return true;
}


function IDUpdate(StrNo) {

    if (!isChinaIDCard(StrNo)) { return false }
    if (StrNo.length == 15) {
        var a, b, c
        StrNo = StrNo.substr(0, 6) + "19" + StrNo.substr(6, 9)
        a = parseInt(StrNo.substr(0, 1)) * 7 + parseInt(StrNo.substr(1, 1)) * 9 + parseInt(StrNo.substr(2, 1)) * 10;
        a = a + parseInt(StrNo.substr(3, 1)) * 5 + parseInt(StrNo.substr(4, 1)) * 8 + parseInt(StrNo.substr(5, 1)) * 4;
        a = a + parseInt(StrNo.substr(6, 1)) * 2 + parseInt(StrNo.substr(7, 1)) * 1 + parseInt(StrNo.substr(8, 1)) * 6;
        a = a + parseInt(StrNo.substr(9, 1)) * 3 + parseInt(StrNo.substr(10, 1)) * 7 + parseInt(StrNo.substr(11, 1)) * 9;
        a = a + parseInt(StrNo.substr(12, 1)) * 10 + parseInt(StrNo.substr(13, 1)) * 5 + parseInt(StrNo.substr(14, 1)) * 8;
        a = a + parseInt(StrNo.substr(15, 1)) * 4 + parseInt(StrNo.substr(16, 1)) * 2;
        b = a % 11;

        switch (b) {
            case 0: { StrNo = StrNo + "1"; } break;
            case 1: { StrNo = StrNo + "0"; } break;
            case 2: { StrNo = StrNo + "X"; } break;
            case 3: { StrNo = StrNo + "9"; } break;
            case 4: { StrNo = StrNo + "8"; } break;
            case 5: { StrNo = StrNo + "7"; } break;
            case 6: { StrNo = StrNo + "6"; } break;
            case 7: { StrNo = StrNo + "5"; } break;
            case 8: { StrNo = StrNo + "4"; } break;
            case 9: { StrNo = StrNo + "3"; } break;
            case 10: { StrNo = StrNo + "3"; }
        }
    }
    return StrNo;
}
function idcard_getsex(id) {
    var id = String(id);
    return sex = id.slice(14, 17) % 2 ? "男" : "女"
}

function idcard_getbirthday(id) {
    var id = String(id);
    var birthday;
    if (id.length == 15) {
        birthday = (new Date(id.substr(6, 2), id.substr(8, 2) - 1, id.substr(10, 2))).toLocaleDateString()
    } else if (id.length == 18) {
        birthday = (new Date(id.slice(6, 10), id.slice(10, 12) - 1, id.slice(12, 14))).toLocaleDateString()
    } else {
        return false;
    }
    return birthday;
}
