메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

목록의 체크 선택/해제에 따라 [전체선택] 체크박스를 체크하거나 해제하기 


동적으로 생성된 목록에서
체크박스를 모두 선택하면 --> 목록 상단의 [전체선택/해제] 체크박스를 체크하고
체크박스를 하나라도 해제하면 --> 목록 상단의 [전체선택/해제] 체크박스를 체크해제
 

HTML 부분

아래의 HTML 코드 중 주석 부분을 jQuery로 동적 생성시 제어가 당초 생각했던 코드대로 실행되지 않았다
그래서 동적 생성 HTML일 경우 아래처럼 처리해 보았다
<table id="table-03" class="table table-responsive table-grtc-01 no-margin has-check" summary="사진정보 이력">
    <thead>
    <tr class="text-center-group vertical-middle-group">
        <th>
            <div class="checkbox">
                <input type="checkbox" value="" aria-label="check" title="check" class="cursor-pointer">
                <label></label>
            </div>
        </th>
        <th>촬영일자</th>
        <th>촬영기관</th>
        <th>사진설명</th>
    </tr>
    </thead>
    <tbody>
    <!--
    <tr class="vertical-middle-group">
        <td class="text-center-group">
            <div class="checkbox">
                <input type="checkbox" value="option1" aria-label="check" title="check" class="cursor-pointer">
                <label></label>
            </div>
        </td>
        <td class="text-center">2016/05/16</td>
        <td class="tooltip-demo txt-ellipsis-td">
            <span data-toggle="tooltip" data-placement="top" title="김해시">김해시</span>
        </td>
        <td class="tooltip-demo txt-ellipsis-td">
            <span data-toggle="tooltip" data-placement="top" title="20160415_sample.jpg">20160415_sample.jpg</span>
        </td>
    </tr> -->
    </tbody>
</table>
 

jQuery 부분

//$('input[name="tpiSeqs"]').click(function(){ //동적 생성된 HTML에서는 작동 안됨
$(document).on('click', 'input[name="tpiSeqs"]', function(){ //동적 생성된 HTML에서도 작동됨
    //var totLength = $(this).length; //이건 항상 1이 나왔음
    var totLength = $('input[name="tpiSeqs"]').length; //이건 예상했던 개수가 나옴
    var chkLength = $('input[name="tpiSeqs"]:checked').length;

    if (totLength > 0 && totLength == chkLength) {
        console.log("on:");
        $('#table-03 thead input:checkbox').prop("checked",true);
    } else {
        console.log("off");
        $('#table-03 thead input:checkbox').prop("checked",false);
    }
});


List of Articles
번호 제목 날짜 조회 수
179 easing - 효과의 진행 속도 file 2021.03.26 156
178 jQuery 사용자 정의 속성이 잘 반영되지 않은 경우 2021.03.25 158
177 before / after / insertBefore / insertAfter - element 추가 (동등 관계) 2021.03.31 168
176 radio 제어하기 2021.03.25 170
175 focus() 로 오브젝트 옮기기 2021.03.26 171
174 input checkbox 모두 체크하기 2021.03.26 176
173 모든 링크를 읽어들여 기존의 태그 뒤에 새창열기 태그를 추가하기 예 2021.03.25 189
172 foreach문 2021.03.26 195
171 CSS로 요소에 대한 클릭 등 이벤트 발생을 막고 싶을 때 2021.03.25 206
170 행에 징검다리 스타일 입히기 (:odd, :even) 2021.03.31 210
169 jquery 사용자정의 속성의 사용 2021.03.25 211
168 parent of the iframe element selector 2021.03.31 216
167 prepend / append - element 추가 (부모/자식 관계) 2021.03.31 225
166 jQuery로 접속 주소(URL) 알아내기 2021.03.25 228
165 라디오 버튼 선택값 가져오기 2021.03.26 231
164 제이쿼리에서 클래스(class) 이름 추가/삭제 2021.03.31 233
163 change 전의 값을 가져오기 2021.03.26 258
162 마우스 좌표 얻기 2021.03.31 271
161 draggable - div 드래그 2021.03.31 273
160 항상 최신버전으로 사용하기 2021.03.26 285
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved