본문 바로가기

Web Progreming

[ 자바스크립트 ] 주민등록번호 유효성 체크

//주민번호 체계 검사
 function ssnConfirm(numObj){
  var num = numObj.value;
  if(num==''){
   alert("주민등록번호를 정확하게 입력해주세요.");
   numObj.focus();
   return false;
  }
  if(num.length!=13){
   alert ("주민등록번호를 '-' 를 제외한 13자리 숫자로 입력하세요.");
   numObj.focus();
   return false;
  }
  if(isNaN(num)){
   alert("주민등록번호는 숫자만 입력이 가능합니다.");
   numObj.focus();
   return false;
  } 
  var ssn1 = num.substring(0, 6);
  var ssn2 = num.substring(6, 13);
  if((ssn1.length==6) &&(ssn2.length==7)){
   var ssn=ssn1+ssn2;
   a = new Array(13);
   for (var i=0; i < 13; i++) {
    a[i] = parseInt(ssn.charAt(i));
   }
   var k = 11 - (((a[0] * 2) + (a[1] * 3) + (a[2] * 4) + (a[3] * 5) + (a[4] * 6) + (a[5] * 7) + (a[6] * 8) + (a[7] * 9) + (a[8] * 2) + (a[9] * 3) + (a[10] * 4) + (a[11] * 5)) % 11);
   if (k > 9){
    k -= 10;
   }
   if (k == a[12]){
    return true;
   }else{
    alert ("잘못된 주민등록번호 입니다.\n\n다시 입력해 주세요.");
    numObj.value ="";
    numObj.focus();
    return false;
   }
  }
 }


출처 : 개발자의 길