안녕하세요.
디자인도 하고, 개발도 하는 '디발자 뚝딱'입니다.
이번 포스팅에서는
자바스크립트나 제이쿼리에서 dataTable을 구현할 때 마주하는
'Cannot reinitialise DataTable.' 에러 해결 방법에 대해 공유하겠습니다.
우선, 'Cannot reinitialise DataTable.'를 번역하자면
'DataTable을 다시 초기화할 수 없습니다.'라는 뜻입니다.
이 에러는
이미 테이블이 그려져 있는데, 그 위에 다른 테이블을 렌더링하려고 할 때 발생하는데요.
자, 지금부터 해당 에러 해결방법에 대해 알려드리겠습니다.
js
코드를 봐주세요.
dataTable을 작성할 때 우리는 ajax를 먼저 작성한 후에
여러 옵션들과 columns를 작성하는데요.
노란색 부분 옵션 공간에
destroy: true를 넣어주시면 됩니다.
destory는 파괴라는 뜻을 가졌는데요.
말 그대로 테이블의 파괴를 허락해서 새로운 테이블을 렌더링 할 수 있도록 초기화를 시키는 것입니다.
뜻을 이해하면 오래 기억에 남겠죠? :)
$('#Table').DataTable({
dom: 'Bfrtip',
buttonL [{ ...
}),
keys: true,
ajaxL { ...
},
searching: true,
destroy: true, // 이 부분 체크해 주세요!
lengthChange: false,
columns: [...
],
columnDefs: []
createdRow: function(row, data, dataTable) {...
}
});
728x90