[HTML & CSS & JavaScript]/Javascript&JQuery
[자바스크립트] 아이디 중복 체크 만들기(스크립트에서 JSTL 사용하기)
SEOULSENSE
2019. 12. 26. 18:00
자바스크립트 안에서 JSTL 문구를 사용해야 할 때가 있다.
다만, 여기서 참고해야 할 사항은 JSTL 안에서는 javascript가 사용이 불가하지만 javascript안에서는 JSTL 사용이 가능하다는 것이다.
<script language="JavaScript">
function checkJoinForm() {
var list = new Array();
<c:forEach items="${listUser}" var="user">
list.push("${user.id}");
</c:forEach>
if (f1.id.value == '') {
alert("아이디를 입력해주세요.");
f1.id.focus();
return false;
} else if (f1.passwd.value == '') {
alert("비밀번호를 입력해주세요.");
f1.passwd.focus();
return false;
} else if (f1.email.value == '') {
alert("E-mail을 입력해주세요.");
f1.email.focus();
return false;
} else if (f1.name.value == '') {
alert("이름을 입력해주세요.");
f1.name.focus();
return false;
} else if (f1.nick.value == '') {
alert("닉네임을 입력해주세요.");
f1.nick.focus();
return false;
} else {
for (var i = 0; i < list.length; i++) {
if (f1.id.value == list[i]) {
alert("이미 가입된 아이디입니다.");
f1.id.focus();
return false;
}
}
}
alert(f1.name.value + "님 회원가입을 축하합니다.");
}
</script>
아래 코드에서 주목할 부분은 아래 사진이다.
앞서 말한 것과 같이 javascript가 사용이 불가하다고 하는데, 사용하고 있다.
아래와 같은 사용은 가능하다.
그러나 두번째 사진과 같은 코드는 사용이 불가하다.
두번째 사진에서는 if test=문구를 사용하였다.
저렇게 비교 문장을 사용할 수가 없다.
그렇기 때문에 첫번째 사진과 같이 javascript list에 값을 저장한 후
아래와 같이 javascript for 문으로 값 비교를 진행해야 한다.