체크박스 체크 여부 확인에 대한 쿼리문 오류
본문
쿼리문으로 체크박스 체크 여부를 판단하는 코드들 넣었는데, 체크가 안되었어도 서브밋 되는 현상이 발생하네요... 콘솔로 찍어도 안나오면 쿼리문이 잘못됬다라는건데, 상위 코드들은 정상작동 되는데, 체크박스만 처리가 안되네요... 어디에 문제가 있는건가요?
function chk_input() {
if (user_form.name.value == "") {
alert("이름을 입력해 주세요.");
user_form.name.focus();
return false;
} else if (user_form.hp.value == "") {
alert("전화번호를 입력해 주세요.");
user_form.hp.focus();
return false;
} else if ($("#agree1").is(":checked") == false) {
alert("개인정보수집동의에 체크해주세요.");
console.log('체크 안 된 상태');
return false;
} else {
return true;
}
}
답변 3
스크립트에 user_form이 제대로 정의 된것이 맞나요? 전역변수로 form을 지정했나요?
현재 function chk_input안에서는 user_form을 체크를 못하는 구조같아 보입니다.
function chk_input() {
var user_form = document.user_form; // form의 name속성
...
user_form.submit();
}
아래처럼 form태그에 onsubmit 이벤트 추가 후 테스트 해보셔야 할 것 같네요.
<form name="user_form" action="" onsubmit="return chk_input(this);">
..
</form>
<script>
function chk_input(user_form) {
...
}
</script>
!-->!-->
else if 로 연달아쓰지말고 if 여러개로 나눠서 ㄱ
function chk_input() {
if (user_form.name.value == "") {
alert("이름을 입력해 주세요.");
user_form.name.focus();
return false;
}
if (user_form.hp.value == "") {
alert("전화번호를 입력해 주세요.");
user_form.hp.focus();
return false;
}
if ($("#agree1").is(":checked") == false) {
alert("개인정보수집동의에 체크해주세요.");
console.log('체크 안 된 상태');
return false;
}
return true;
}
답변을 작성하시기 전에 로그인 해주세요.