function isInteger(obj){
	var newValue = obj.value
	var newLength = newValue.length
	for ( var i = 0; i != newLength ; i ++) {
		aChar = newValue.substring(i,i+1)
		if (aChar < "0" || aChar > "9") {
			return false
		}
	}
	return true
}

function isNumeric(obj){
	var newValue = obj.value
	var newLength = newValue.length
	var extraChars=".- "
	for ( var i = 0; i != newLength ; i ++) {
		aChar = newValue.substring(i,i+1)
		searched = extraChars.indexOf(aChar)
		if (searched == -1 && (aChar < "0" || aChar > "9" ) ) {
			return false
		}
	}
	return true
}

function isEmpty(obj){
	if (obj.value == ''){
		return true
	}
	return false
}

function isEmail(textobj) {
	var newValue = textobj.value
	var newLength = newValue.length
	var extraChars=".-@_"
	for ( var i = 0; i != newLength ; i ++) {
		aChar = newValue.substring(i,i+1)
		aChar= aChar.toUpperCase()
		search = extraChars.indexOf(aChar)
		if (search == -1 &&  (aChar < "A" || aChar > "Z") ) {
			return false
		}
	}
	return true
}

function isAlphabet(obj){
	return true
}

function isFileFormat(obj,Format){
var FilePath = obj.value.toUpperCase()
var format = Format.toUpperCase()
var Ext = ''
if (FilePath.length > 0){
	var startpoint = FilePath.lastIndexOf('.') + 1
	var endpoint = FilePath.length
	Ext = FilePath.substring(startpoint,endpoint)
}
if (Ext != format && Ext !='') {
			return false
}

return true
}

var local=new Array(34)   //建立身分证第一码的识别库
local[10]='A'
local[11]='B'
local[12]='C'
local[13]='D'
local[14]='E'
local[15]='F'
local[16]='G'
local[17]='H'
local[18]='J'
local[19]='K'
local[20]='L'
local[21]='M'
local[22]='N'
local[23]='P'
local[24]='Q'
local[25]='R'
local[26]='S'
local[27]='T'
local[28]='U'
local[29]='V'
local[32]='W'
local[30]='X'
local[31]='Y'
local[33]='Z'

function checkid(obj){   //身分证检测主函式
  var err = 0
  var id = obj.value
  id=id.toUpperCase()   //先把所有输入的英文部分转成大写字母
  if(lengtherr(id)){   //做输入长度的检测
    //alert('输入的长度有误!')
	err = 1
  }else if(firstlettererr(id)){   //做第一码英文字母是否输入正确的检测
    //alert('身分证第一码并无此英文字母:'+id.substring(0,1))
	err = 1
  }else if(numerr(id)){   //做后九码为是否数字的检测
    //alert('身分证后九码应为数字!')
	err = 1
  }else if(checkerr(id)){   //做检查码是否正确的检测
    //alert('身分证检查码有误!')
	err = 1
  }
  if (err != 0){
  	 return false
  } else {
  	return true}
}
function lengtherr(id){   //输入长度检测函式
  if(id.length<10)   //如果输入的长度小于10个字元
    return 1   //就回覆错误为true的发生状态
  else    //否则就回覆错误为false的发生状态
    return 0
}
function firstlettererr(id){   //第一码字元正确性检测
  var fl=id.substring(0,1)   //取得第一码字元值给fl变数
  var haserr=1   //建立错误发生旗标,预设是有错误
  for(i=10;i<=33;i++){   //从第一码的识别库中找寻是否有该字母
     if(local[i]!=fl)   //如果没有就往下一个找
       continue
     else{   
   //如果有的话就把错误码设为0表示没有错误发生,因为第一码已在识别库中了
       haserr=0
       break
     }
  }
  if(haserr==1)   //如果错误发生旗标为1表示第一个字元并未出现在识别库中
    return 1   //就回覆错误为true
  else
    return 0
}
function numerr(id){   //后九码数字检测函式
  var haserr=0   //建立错误发生旗标,预设是没有错误的
  for(i=1;i<=9;i++){   //从第1个数字到第9个数字开始检测
     if(parseInt(id.substring(i,i+1))>0 || id.substring(i,i+1)=='0')   //如果取得的字元为数字
       continue   //就往下一个去检测
     else{   //若是发现有非数字的字元
       haserr=1   //就把错误旗标设为1的发生状态
       break}   //并中止回圈的执行
  }
  if(haserr==1)   //如果发生了错误
    return 1   //就回覆错误为true
  else
    return 0
}
function checkerr(id){   //检查码澰测函式
  var se=new Array(10)   //建立数字阵列
  var we=0   //建立权数计算总值变数
  var checkcode=0   //建立识别码变数
  for(i=10;i<=33;i++){   //搜寻第一码的英文字母在第机顺位
     if(local[i]==id.substring(0,1)){   //如果找到弓就把该顺位的第一码给第一数字阵列
       se[0]=parseInt((i+'0').substring(0,1))
       se[1]=parseInt((i+'0').substring(1,2))   //把第二码给第二数字阵列
       break   //并中止回圈的执行
       }  
     }
  for(i=1;i<=9;i++){   //把身份证的后九个数字依次姶接下来的数字阵列项
     se[i+1]=parseInt(id.substring(i,i+1))
  }
  for(i=0;i<=10;i++){   //计算权数总值
     if(i==0)   //如果是第一个阵列值
       we=we+se[i]   //就把值直接加入(因为所乘的权数为1)
     else
       we=we+(se[i]*(10-i))   //否则就乘以权数
  } 
  checkcode=((10-mod(we,10))+'0').substring(0,1)   //取得检查码
  if(checkcode!=id.substring(9,10))   //检视检查码是否正确
    return 1
  else
    return 0
  
}
function mod(a,b){   //取余数之函数
  var r   //建立商的变数
  r=Math.round(a/b)   //以四舍五入的方式取得a/b的商,所以商可能会多1
  if((b*r)>a)   //如果多了1就把它减掉
    r-=1
  return (a-(b*r))   //传回余数
}

function isDate(objyear,objmonth,objday){
	var year = parseInt(objyear.value)
	var month = parseInt(objmonth.value)
	var day = parseInt(objday.value)
	var smonth = false
	var leapyear = false
	
	if (month == "4" || month == "6"||month == "9"||month == "11") {
		smonth = true
	}

	if (smonth == true && day > 30){
		return false
	} else if (day > 31) {
		return false
	} 
		
	if (year % 4 == 0 && year % 400 == 0 && year % 100 == 0) {
		leapyear = true
	} else if (year % 4 == 0 && year % 100 != 0) {
		leapyear = true
	} 

	if ( month == 2 ) {
		if ( leapyear == true && day > 29) {
			return false 
		} else if (leapyear == false && day > 28){
			return false 
		}
	}					

	return true
}

function showrow(obj,img){
 if (obj.style.display != "block"){
  img.src = '/images/reduce.gif'
  obj.style.display="block"
 } else {
  img.src = '/images/increase.gif'  
  obj.style.display = "none"
 }
}

function cleartext (obj,initialvalue){
	if (obj.value == initialvalue){
		obj.value = ''
	}
}

function restoretext (obj,initialvalue){
	if (obj.value == ''){
		obj.value = initialvalue
	}
}

function selectall(obj){
	if (obj != null){
		if (obj.length == 0 ) {
			if (obj.disabled == 0){
				obj.checked = 1
			}
		} else {
			for (i = 0 ; i < obj.length ; i++){
				if (obj(i).disabled == 0){
					obj(i).checked = 1
				}					
			}
		}
	}
}

function unselectall(obj){
	if (obj != null){
		if (obj.length == 0 ) {
			if (obj.disabled == 0){
				obj.checked = 0
			}
		} else {
			for (i = 0 ; i < obj.length ; i++){
				if (obj(i).disabled == 0){
					obj(i).checked = 0
				}					
			}
		}
	}
}

function validint(obj){
	if (!isInteger(obj)){
		obj.focus
		alert('请输入数字')
		while ( ! isInteger(obj) ){
			obj.value = obj.value.substring(0,obj.value.length - 1)
		}
	}

}

function validNumeric(obj){
	if (!isNumeric(obj)){
		obj.focus
		alert('请输入数字')
		while ( ! isNumeric(obj) ){
			obj.value = obj.value.substring(0,obj.value.length - 1)
		}
	}

}


function Buildkey(num1,num2,obj1,obj2){
    if (obj1 != null ) {
		for(ctr=0;ctr<key1[num1].length;ctr++){
       		obj1.options[ctr]=new Option(key2[num1][ctr],key1[num1][ctr]);}
	}

	if (obj2 != null ) {
		for(ctr=0;ctr<key3[num1][0].length;ctr++){
			obj2.options[ctr] = new Option(key4[num1][0][ctr],key3[num1][0][ctr]);}
	}
	
    if (obj1 != null ) {
    obj1.length=key1[num1].length;}
	if (obj2 != null ) {
	obj2.length=key3[num1][0].length;}
    obj1.selectedIndex=num2;
}

function Buildkey2(num1,num2,num3,obj1){
    for(ctr=0;ctr<key3[num1][num2].length;ctr++){
       obj1.options[ctr]=new Option(key4[num1][num2][ctr],key3[num1][num2][ctr]);
    }
	obj1.length=key3[num1][num2].length;
    obj1.selectedIndex=num3;
}

