티스토리 뷰
<!DOCTYPE html>
<html>
<head>
<title>회원가입</title>
<script type="text/javascript">
function checks(){
//값 불러오기
var getId = document.getElementById("id");
var getPw = document.getElementById("password");
var getPwCheck = document.getElementById("password_check");
var getMail = document.getElementById("mail");
var getName = document.getElementById("name");
var getHobby = document.getElementsByName("hobby");
var getNum = document.getElementById("id_num");
var getNumBack = document.getElementById("id_num_back");
var getIntro = document.getElementById("intro");
//value 불러오기
var id = getId.value;
var pw = getPw.value;
var pwCheck = getPwCheck.value;
var mail = getMail.value;
var name = getName.value;
var idNum = getNum.value;
var idNumBack = getNumBack.value;
//유효성 검사
var regExp = /^[a-zA-Z0-9]{4,12}$/; //id, password
var regName = /^[가-힝]{2,}$/; //name
var regMail = /[a-z0-9]{2,}@[a-z0-9-]{2,}.[a-z0-9]{2,}/i; //mail
if(!regExp.test(id)) { //id
alert("아이디 다시 설정");
getId.value ="";
getId.focus();
return false;
} else if(!regExp.test(pw)) { //password
alert("비밀번호 다시 설정");
getPw.value="";
getPw.focus();
return false;
} else if(!(pwCheck.slice(0, pwCheck.length) == pw.slice(0, pw.length))) { //password 동일한지 확인
alert("비밀번호 서로 안맞아");
getPwCheck.value="";
getPwCheck.focus();
return false;
} else if((pw.slice(0, pwCheck.length) == id.slice(0, id.length))) { //password랑 id 다른지 확인
alert("비밀번호와 id가 동일하면 다매요!");
getPw.value="";
getPwCheck.value="";
getPw.focus();
return false;
} else if(!regMail.test(mail)){ //메일주소 확인
alert("이메일 형식 이상하노");
getMail.value="";
getMail.focus();
return false;
} else if(!regName.test(name)) { //이름 확인
alert("이름 다시");
getName.value="";
getName.focus();
return false;
} else if(document.data.hobby[0].checked==false &&
document.data.hobby[1].checked==false &&
document.data.hobby[2].checked==false &&
document.data.hobby[3].checked==false &&
document.data.hobby[4].checked==false){ //체크박스
alert("박스 체크좀");
return false;
} else if(getIntro.value=="") { //자기소개
alert("자기소개 적어주셈");
return false;
}
}
//주민등록번호 유효성 검사
function check_jumin() {
var jumin = document.getElementById("id_num").value + document.getElementById("id_num_back").value;
//pnum = 주민번호 앞자리
//nnum = 주민번호 뒷자리
var fmt = /^\d{6}[1234]\d{6}$/;
if (!fmt.test(jumin)) {
return false;
}
var birthYear = (jumin.charAt(6) <= "2") ? "19" : "20";
birthYear += jumin.substr(0, 2);
var birthMonth = jumin.substr(2, 2) - 1;
var birthDate = jumin.substr(4, 2);
var birth = new Date(birthYear, birthMonth, birthDate);
if (birth.getYear() % 100 != jumin.substr(0, 2) ||
birth.getMonth() != birthMonth ||
birth.getDate() != birthDate) {
return false;
}
var buf = new Array(13);
for (var i = 0; i < 13; i++) buf[i] = parseInt(jumin.charAt(i));
multipliers = [2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5];
for (var sum = 0, i = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]);
if ((11 - (sum % 11)) % 10 != buf[12]) {
return false;
}
return true;
}
function checked() {
if (check_jumin()) {
alert("올바른 주민등록번호입니다.");
var year1 = document.getElementById("year");
var num1 = document.getElementById('id_num');
var num2 = num1.value;
var num3 = num2.substring(0, 2);
var num4 = num2.substring(2, 4);
var num5 = num2.substring(4, 6);
year1.value = "19" + num3;
document.data.mon.value = num4;
document.data.day.value = num5;
return true;
}
else
var num1 = document.getElementById('id_num');
var num2 = document.getElementById('id_num_back');
alert("똑바로 입력하세요");
num1.value = "";
num1.focus();
num2.value = "";
return false;
}
</script>
</head>
<body>
<form action="mailto:jessicasla@nate.com?subject=[s]" name="data" method="post" onsubmit="return checks()">
<!--밑에 submit 누르면 메일로 보내짐-->
<table border="1" bordercolor="grey" align="center">
<tbody>
<tr>
<td colspan="2" bgcolor="lightblue" align="center">회원 기본 정보</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">아이디</td>
<td><input size="15" type="text" id="id"> 4~12자의 영문 대소문자와 숫자로만 입력</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">비밀번호</td>
<td><input size="15" type="password" id="password"> 4~12자의 영문 대소문자와 숫자로만 입력</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">비밀번호 확인</td>
<td><input size="15" type="password" id="password_check"></td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">메일 주소</td>
<td><input type="text" id="mail"> 예) id@domain.com</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">이름</td>
<td><input type="text" id="name"></td>
</tr>
<tr>
<td colspan="2" bgcolor="lightblue" align="center"> 개인 신상 정보</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">주민등록번호</td>
<td>
<input size="7" type="text" id="id_num">
- <input size="7" type="password" id="id_num_back">
예)123456-1234567
</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">생일</td>
<td>
<input size="5" type="text" id="year">년
<select id="month">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
월
<select id="day">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
일
</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">관심분야</td>
<td>
<input type="checkbox" name="hobby" value="computer">컴퓨터
<input type="checkbox" name="hobby" value="internet">인터넷
<input type="checkbox" name="hobby" value="travel">여행
<input type="checkbox" name="hobby" value="movie">영화감상
<input type="checkbox" name="hobby" value="music">음악감상
</td>
</tr>
<tr>
<td bgcolor="lightgrey" align="center">자기소개</td>
<td><textarea cols="50" style="margin: 0px; height: 300px; width:480px" id="intro"></textarea>
<!--크기 조정 가능-->
</td>
</tr>
</tbody>
</table>
<p align="center">
<input type="submit" value="회원 가입">
<!--누르면 메일이 보내짐-->
<input type="reset" value="다시 입력">
<!--누르면 초기화-->
</p>
</form>
</body>
</html>
'LANGUAGE > JAVA SCRIPT' 카테고리의 다른 글
[JAVA SCRIPT] 자료형 (0) | 2018.09.28 |
---|---|
[JAVA SCRIPT] 이미지 자동 변경 (0) | 2018.04.15 |
[JAVA SCRIPT] 만년 달력 (0) | 2018.04.05 |
[JAVA SCRIPT] 계산기 (0) | 2018.04.05 |
[JAVA SCRIPT] 배열 관련 객체 (0) | 2018.04.05 |
댓글