회원가입 약관동의 전체동의 보완

by 조쉬 posted Apr 09, 2024
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

그누보드 5.5.8.2.7 버전기준(이전버전 포함)

회원가입 시 약관동의 페이지에서 전체 동의 부분

 

전체동의 체크 후 각 약관 해제 시 전체동의에 체크되어 있음

각각의 동의사항 체크하게되면 전체동의 체크 안됨

 

 

238570509_1675557262.6468.png

 

해결방안

현재 적용중인 테마의 skin/member/ 폴더의 register.skin.php 파일

91~100번째 줄

    jQuery(function($){
        // 모두선택
        $("input[name=chk_all]").click(function() {
            if ($(this).prop('checked')) {
                $("input[name^=agree]").prop('checked', true);
            } else {
                $("input[name^=agree]").prop("checked", false);
            }
        });
    });

 

의 내용을 아래와 같이 변경해 주시면 됩니다.

    /* 체크박스 전체 관련 오류 수정 2023-02-05 */
    jQuery(function($){
        $("input[name=chk_all").click(function() {
            if($("input[name=chk_all").is(":checked")) $("input[name=agree],input[name=agree2]").prop("checked", true);
            else $("input[name=agree],input[name=agree2]").prop("checked", false);
        });
        $("input[name=agree],input[name=agree2]").click(function() {
            var total = $("input[name=agree],input[name=agree2]").length;
            var checked = $("input[name=agree]:checked,input[name=agree2]:checked").length;
            if(total != checked) $("input[name=chk_all").prop("checked", false);
            else $("input[name=chk_all").prop("checked", true); 
        });
    });

 

적용하게되면 각각 체크박스 선택 시 자동으로 전체동의에 체킹

전체동의 체크 후 각 체크박스 해제시 전체동의 체크해제가 가능해 집니다.