jQuery DataTable 무엇? 페이징처리 Grid종류의 라이브러리
-pageLength - 한 페이지에 기본으로 보여줄 항목 수
-bPaginate - 페이징 처리를 할 것인지를 정한다. "false"로 주면 "pageLength"와는 관계 없이 전체 데이터를 출력
-bLengthChange - 한 페이지에 보여줄 항목 수를 변경할 것인지를 정한다. "true"로 주면 그리드에 리스트박스를 추가
-lengthMenu - "bLengthChange" 리스트 항목을 구성할 옵션
-bAutoWidth - 자동 컬럼 폭을 계산하여 반영
-processing - "true"로 주면 값을 가져오는 등의 처리 상황에서 대기가 발생할 때, "processing"인디케이터를 보여준다.
-ordering - 항목들에 대한 정렬을 사용할 것인가를 결정
-searching - 글로벌 searching 기능을 제공하는데, 타이핑한 캐릭터 별로 검색이 자동 적용
-serverSide(중요) -
그리드 내에서 이루어지는 모든 상황들(검색, 페이징, 정렬 등)에 대한 처리를 서버측에서 수행할 것인가를 정한다.
"false"로 주면 처음 한번 서버에서 모든 데이터를 다 가져오고 각각의 상황에 맞게 클라이언트에서 처리한다.
데이터의 양이 적을 것이라는 확신이 있다면 "false"인 것이 더 유리 하지만 데이터 양이 많다면 한번에 너무 많은 데이터를 가져와야 하기 때문에 첫 로딩에 많은 시간이 걸리고 오류가 발생할 수 있다.
다른 기능들에 대한 정보는 dataTables 공식 홈페이지에서 상세하게 확인 가능
ajax에는 데이터를 가져오기 위해 요청할 url과 get, post 등의 type을 정한다 서버로 파라미터 등의 data를 전송할 수 있다.
또한 검색조건 등에 대한 정보를 담아 보내는 것에 사용한다
columns에는 가져온 데이터들 중 어떤 항목들을 컬럼으로 구성할 것인지를 결정
html소스에서 각 컬럼의 헤더로 정해준 항목의 순서대에 맞게 데이터를 구성해 준다. 수가 맞지 않는다면 에러가 발생한다
columnDefs는 각 칼럼들에 대한 커스터마이징을한다.
-targets : colum의 순서(배열)
-render : 해당 칼럼의 링크를 걸거나 꾸밀수있다