체크박스 여러개 항목이 있는데 하나라도 선택 필수 사항으로 하는 방법

체크박스 여러개 항목이 있는데 하나라도 선택 필수 사항으로 하는 방법

QA

체크박스 여러개 항목이 있는데 하나라도 선택 필수 사항으로 하는 방법

본문

체크박스 필수 항목으로 하고 싶은데 여러개 중 하나라도 선택해야 글쓰기가 완료가 되는 방법 좀 가르쳐주세요 ㅠㅠ 인터넷에서 찾아서 적용해봐도 안되요

 

제 소스입니다

 

$check3 = explode(",", $write['wr_14']);
?>
            <input type="checkbox" name="wr_14[]" value="종합"<?php echo in_array("종합", $check1) ? ' checked="checked"' : '' ?> />
종합
<input type="checkbox" name="wr_14[]" value="심리/정서"<?php echo in_array("심리/정서", $check1) ? ' checked="checked"' : '' ?> />
심리/정서
<input type="checkbox" name="wr_14[]" value="사회적관계"<?php echo in_array("사회적관계", $check1) ? ' checked="checked"' : '' ?> />
사회적관계
<input type="checkbox" name="wr_14[]" value="일상생활"<?php echo in_array("일상생활", $check1) ? ' checked="checked"' : '' ?> />
일상생활
<input type="checkbox" name="wr_14[]" value="건강관리"<?php echo in_array("건강관리", $check1) ? ' checked="checked"' : '' ?> />
건강관리
<input type="checkbox" name="wr_14[]" value="경제적"<?php echo in_array("경제적", $check1) ? ' checked="checked"' : '' ?> />
경제적
<input type="checkbox" name="wr_14[]" value="환경적"<?php echo in_array("환경적", $check1) ? ' checked="checked"' : '' ?> />
환경적
<input type="checkbox" name="wr_14[]" value="목표실행정도"<?php echo in_array("목표실행정도", $check1) ? ' checked="checked"' : '' ?> />
목표실행정도
<input type="checkbox" name="wr_14[]" value="기타"<?php echo in_array("기타", $check1) ? ' checked="checked"' : '' ?> />
기타()

 

    var flag = false;
    $("input[name='wr_14[]']").each( function () {
        if (this.checked) {
            flag = !flag; 
            return false;
        }
    });

    if (!flag) {
        alert("종류는 하나 이상 체크해주세요.");
        return false;
    }

 

1893572170_1644806345.2485.png

이 질문에 댓글 쓰기 :

답변 2

- https://sir.kr/qa/449186


  var checked = document.querySelectorAll('input[name="wr_14[]"]:checked');
  if ( !checked.length ) {
    alert("상담유형을 하나 이상 선택해주세요.");
    return false;
  }

// jQuery
  var checked = $('input[name="wr_14[]"]:checked');
  if ( !checked.length ) {
    alert("상담유형을 하나 이상 선택해주세요.");
    return false;
  }

콘솔에 보니 이런 에러가 나네요 ㅠㅠ 저는 초보자라서 고치지도 어떻게 건들어야 할지 모르겠네요 ㅠㅠ

1893572170_1644824455.5241.png

jquery-migrate-1.4.1.min.js?ver=210618:2 JQMIGRATE: Migrate is installed, version 1.4.1
write.php?w=u&bo_table=coll&wr_id=3&page=:496 Uncaught SyntaxError: Illegal return statement
content.js:1 try to connect
1893572170_1644824463.8062.png

그냥 복사&붙여넣기해서 그렇습니다.
주로 아래처럼 폼 전송 전 체크하는 방식으로 사용합니다.

<form ... onsubmit="return form_check()">
:
</form>

<script>
function form_check() {
  // ...
  var checked = $('input[name="wr_14[]"]:checked');
  if ( !checked.length ) {
    alert("상담유형을 하나 이상 선택해주세요.");
    return false;
  }
  // ...
  return true;
}
</script>

답변을 작성하시기 전에 로그인 해주세요.
전체 140
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT