IT이야기

dataTable() 대 DataTable() - 차이점이 있는 이유와 함께 작동

cyworld 2021. 9. 30. 21:55
반응형

dataTable() 대 DataTable() - 차이점이 있는 이유와 함께 작동하도록 하려면 어떻게 해야 합니까?


이 플러그인에 대한 대부분의 문서는 다음으로 초기화하는 것을 나타냅니다.

$('#example').dataTable();

그러나 http://www.datatables.net/examples/api/multi_filter_select.html은 다음을 사용하여 초기화합니다.

$('#example').DataTable();

결과 개체는 상당히 다르며 소문자 'D'로 초기화하면 위의 예제 URL이 작동하지 않지만 거의 모든 다른 경우에는 소문자 'D' 초기화가 필요 합니다.

왜 차이가 있는지, 그리고 어떻게 둘을 함께 잘 놀게 만드는지 누가 설명해주실 수 있나요? 기본적으로 다중 필터 선택 기능이 필요하지만 대문자 'D' 초기화가 마음에 들지 않는 다른 호출/플러그인도 추가해야 합니다.


기본적으로 두 생성자는 서로 다른 객체를 반환합니다.


데이터 테이블 생성자

var table = $(<selector>).dataTable()

dataTablejQuery 객체를 반환하는 oldschool dataTables 생성자입니다. 이 오브젝트의 jQuery 같은 헝가리어 표기 형식으로 API 메소드의 세트로 농축되어 fnFilter, fnDeleteRow등등. 여기 에서 API 메서드의 전체 목록을 참조 하세요 . 예:

table.fnDeleteRow(0); 
table.fnAddData(['E', 'F']);

dataTable모든 1.9.x / 1.10.x 버전에서 지원됩니다 .


데이터 테이블 생성자

var table = $(<selector>).DataTable()

DataTable 생성자는 1.10.x 에서 도입되었으며 페이지, 행, 셀 등에 대한 전체 읽기/쓰기 액세스 권한이 있는 거대한 API 개체를 반환합니다 . manual 을 참조하십시오 . 예시 등가물:

table.row(0).remove();
table.row.add(['E', 'F']).draw();

dataTable과 DataTable 결합

이전 코드를 유지하거나 어떤 이유로 oldschool dataTable 생성자를 사용해야 하지만 여전히 새 API를 사용해야 하는 경우 jQuery 객체는 새 API를 반환 하는 메서드로 확장됩니다( 1.10.0부터 ) .api(). 예시 등가물:

var table = $('#example').dataTable();
table.api().row(0).remove();
table.api().row.add(['E', 'F']).draw();

같은 이전 API는 table.fnDeleteRow(0)여전히 작동합니다. 그래서 당신의 관심사에:

기본적으로 다중 필터 선택 기능이 필요하지만 대문자 'D' 초기화가 마음에 들지 않는 다른 호출/플러그인도 추가해야 합니다.

보시다시피 둘 다 할 수 있습니다! dataTables를 이전 방식으로 초기화 .api()하고 새 API에 액세스해야 할 때 사용 합니다.


dataTable()을 사용하는 공식 예제가 많은 이유는 무엇입니까?

글쎄, 당신은 생성자 를 사용할 필요 가 없습니다 DataTable. 새 API를 사용하지 않는다면 DataTable생성자 를 사용할 이유가 없습니다 . oldschool dataTable생성자는 더 이상 사용되지 않습니다. DataTables는 대부분 한 사람이 작업합니다. 포럼, 매뉴얼, 수많은 예제 등이 있는 거대한 웹 사이트를 유지 관리하고 개발하는 것은 분명히 매우 시간이 많이 걸리는 작업입니다. 이것은 단지 추측이지만, 나는 이제 변경에 의해 앨런 자딘 가정 dataTableDataTable이 실제로 필요한 경우, 단순히 자신이 한 번에 모든 것을 할 어차피 bacause.

ReferenceURL : https://stackoverflow.com/questions/25207147/datatable-vs-datatable-why-is-there-a-difference-and-how-do-i-make-them-w

반응형