반응형
<html> <head><title>주민등록번호 검사</title> <script language="javascript"> function chkresno(resno) { // 주민번호의 형태와 7번째 자리(성별) 유효성 검사 fmt = /^\d{6}-[1234]\d{6}$/; if (!fmt.test(resno)) { alert("잘못된 주민등록번호입니다."); return; } // 날짜 유효성 검사 birthYear = (resno.charAt(7) <= "2") ? "19" : "20"; birthYear += resno.substr(0, 2); birthMonth = resno.substr(2, 2) - 1; birthDate = resno.substr(4, 2); birth = new Date(birthYear, birthMonth, birthDate); if ( birth.getYear() % 100 != resno.substr(0, 2) || birth.getMonth() != birthMonth || birth.getDate() != birthDate) { alert("잘못된 주민등록번호입니다."); return; } // Check Sum 코드의 유효성 검사 buf = new Array(13); for (i = 0; i < 6; i++) buf[i] = parseInt(resno.charAt(i)); for (i = 6; i < 13; i++) buf[i] = parseInt(resno.charAt(i + 1)); multipliers = [2,3,4,5,6,7,8,9,2,3,4,5]; for (i = 0, sum = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]); if ((11 - (sum % 11)) % 10 != buf[12]) { alert("잘못된 주민등록번호입니다."); return; } alert("정상적인 주민등록번호입니다."); } </script> </head> <body> <h1>주민등록번호 검사</h1> <form onSubmit="chkresno(this.resno.value);"> 주민등록번호 <input type="text" name="resno"> <input type="submit" value="지금 검사"> </form> </body> |
반응형
'WEB > HTML&SCRIPTS' 카테고리의 다른 글
JavaScript 문서 로딩시간 보여주기 (0) | 2010.10.21 |
---|---|
HTML 소스보기 막기 (0) | 2010.10.21 |
VB Script 2진수->10진수, 16진수 변환 (0) | 2010.10.21 |
JS FAQ 괜찮아서...특히 이벤트쪽 (0) | 2010.10.20 |
JavaScript Reference Site 소개 (0) | 2010.10.20 |