[문제 원인]
이는 jquery.datatable 컨트롤 자체의 결함이어야 합니다. 이 컨트롤의 확인란 플러그인 ID는 하드 코딩되어 있으므로 페이지에서 여러 데이터 테이블을 참조하는 경우 모두 선택 이벤트가 모든 데이터 테이블과 일치하여 여러 테이블의 모든 확인란이 선택됩니다.
【해결책】
따라서 jquery.datatable 컨트롤을 수정하고 생성된 각 데이터 테이블 아래의 확인란에 다른 ID를 부여하는 것이 가장 좋습니다. 데이터 테이블의 ID가 다르기 때문에 데이터 테이블의 ID를 확인란의 접두사로 사용할 수 있습니다. 고유한 ID를 형성합니다. 이벤트를 호출하려면 이 확인란의 특정 호출 이벤트도 동기화하고 이 새 ID로 바꿔야 합니다.
[파일 수정]
jqurey.datatable.ext.js(v0.0.1)
1. init 메소드 수정:
$("#" options.select_table).find('thead tr th:first-child')
.prepend('');
$("#" $.fn.datatable_ext.defaults.select_table "_chk_all").click(function(){
==>
if(checked_chk_num == curr_page_chk_num){
$("#" $.fn.datatable_ext.defaults.select_table "_chk_all").attr('checked', 'checked');
}else{
$("#" $.fn.datatable_ext.defaults.select_table "_chk_all").removeAttr('checked');
}