Top

[Javascrip] 주민등록번호 예외처리 | Web-Programing
김경훈 (admin) | Editor | 2011/12/09 10:00:25 | 조회:4473

 정규표현식의 달인 기원씨가 만든 " 주민등록번호 예외처리 자바스크립트 "
실명인증까지는 안되도 장난 입력은 절때 안된다고 함.
하지만 운좋게 안걸릴 수 있다고 하니.. 참고 하세요~~
 

  1. function jumin_check()
  2. {
  3. //주민번호 예외처리
  4. if(idno.value.length == 13 || idno.value.length == 14)
  5. if(idno.value.length == 14)
  6. var chkidno = /[0-9]{6}-[0-9]{7}/;
  7. if(chkidno.test(idno.value))
  8. idno.value = idno.value.replace(/-/g,'');
  9.  else
  10.  {
  11.   alert('올바른 주민등록 번호를 입력 해 주세요.');
  12.   return;
  13.  }
  14.  
  15. }
  16. //생년월일 검사
  17. var birthYear = (idno.value.charAt(6) <= "2") ? "19" : "20";
  18. birthYear += idno.value.substr(0, 2);
  19.   var birthMonth = idno.value.substr(2, 2) - 1;
  20.   var birthDate = idno.value.substr(4, 2);
  21.   var birth = new Date(birthYear, birthMonth, birthDate);
  22.  
  23.   if ( birth.getYear() % 100 != idno.value.substr(0, 2) ||
  24.       birth.getMonth() != birthMonth ||
  25.         birth.getDate() != birthDate) 
  26.         {
  27.       alert('올바른 주민등록 번호를 입력 해 주세요.');
  28.   return;
  29.   }
  30.   //주민번호 유효성 검 사
  31. var buf = new Array(13);
  32.   for (var i = 0; i < 13; i++) buf[i] = parseInt(idno.value.charAt(i));
  33.  
  34.   multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
  35.   for (var sum = 0, i = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]);
  36.  
  37.   if ((11 - (sum % 11)) % 10 != buf[12]) 
  38.   {
  39.   alert('올바른 주민등록 번호를 입력 해 주세요.');
  40.       return;
  41.   }
  42. }
  43. else
  44. {
  45. alert('올바른 주민등록 번호를 입력 해 주세요.');
  46. }
  47. }




출처 :  기원씨 뇌.
공유하기
공유하기
0
0
0


댓글을 불러오는 중입니다.
▲ 이전글 연구소 생일 파티~☆ 김경훈 (admin) 2011-12-08 21:06:09
▼ 다음글 [Javascript] 마우스 드레그로 이미지 크기 조절. 김경훈 (admin) 2011-12-07 09:17:28