그누보드에서 보면 리스트에서 체크박스 체크할 때 맨 위쪽에 있는 체크박스 체크및 해제시 전체 체크/전체 해제가 됩니다.
회사에서 제가 제시했던 이슈는
1. 전체 체크박스 체크 후 리스트에서 하나의 체크를 체크해제하면 전체 체크박스의 체크도 해제되어야 하는것 아닌가?
2. 전체 체크박스를 체크하지 않고 하나하나 전부 체크시 또는 위 1번에서 하나를 풀었을 때 전체 체크박스의 체크해제가 되었을 때 다시 체크가 되면 전체 체크박스에도 체크가 되어야 하지 않나?
였습니다.
해당 이슈는 의외로 간단히 처리가 됩니다.
(function($) {
jQuery(document).on('change','input[type="checkbox"][name^="chk_wr_id"]', function() {
let allChecker = 1; // 전체 체크가 되어있다고 설정
jQuery('input[type="checkbox"][name^="chk_wr_id"]').each(function() {
let isChecked = jQuery(this).is(':checked');
if(isChecked === false) {
allChecker = 0; // 하나라도 해제된다면에 대한 설정
}
});
if(allChecker == 0) {
jQuery('#chkall').prop('checked', false);
} else {
jQuery('#chkall').prop('checked', true);
}
});
})(jQuery);
... 참 쉽죠 ...?
... 쓸데 없을 수도 있지만 의외로 유용..... 할까요? ㅎㅎ
댓글 5개
게시글 목록
| 번호 | 제목 |
|---|---|
| 23966 | |
| 23963 | |
| 23953 | |
| 23949 | |
| 23938 | |
| 23935 | |
| 23933 | |
| 23928 | |
| 23919 | |
| 23918 | |
| 23917 | |
| 23910 | |
| 23902 | |
| 23901 | |
| 23897 | |
| 23894 | |
| 23893 | |
| 23891 | |
| 23885 | |
| 23872 | |
| 23870 | |
| 23862 | |
| 23859 | |
| 23853 | |
| 23845 | |
| 23838 | |
| 23827 | |
| 23819 | |
| 23805 | |
| 23801 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기