2016-08-04 3 views
1

화면에서 테이블에있는 데이터를 가져 오려고합니다.데이터 테이블에 그려진 데이터를 가져옵니다.

각 다시 그리기에서 테이블 데이터를 가져올 수 있지만 화면에 그려지는 것보다 전체 데이터 집합입니다.

$(document).ready(function() { 
    var table = $('#myTable').DataTable({ 
     dom: 'Blfrtip', 
     buttons: [ 
      { 
       extend: 'excel', 
       text: 'Download Excel' 
      } 
     ] 
    });  
    $('#myTable').on('draw.dt', function(){ 
     console.log(table.data()); 
    }); 
    $('#search-category').bind('input propertychange',function(){ 
     table 
     .column(3) 
     .search(this.value) 
     .draw(); 
    }), 
    $('#search-sub-category').bind('input propertychange', function(){ 
     table 
     .column(4) 
     .search(this.value) 
     .draw(); 
    }) 
}); 

내 목표는 실제로 사용자에게 표시되는 테이블 데이터를 가져 오는 것입니다.

https://jsfiddle.net/qbcnsjo8/

+0

데이터는 어떻게 입력됩니까? 물론 입력 전에 데이터를 저장 한 다음 나중에 사용할 수 있도록 보관할 수 있습니다. –

+0

아이디어는 테이블이 필터링 될 때 결과 데이터가 자바 스크립트에서 클라이언트 측으로 편집 될 수 있다는 것입니다. 필터 조건을 저장하고 전체 데이터 집합을 다시 필터링하는 대신 데이터 테이블에이 기능이 포함되어 있고 바퀴를 재발 명하고 싶지 않다고 가정합니다. – user3770935

답변

1

사용 rows().data() API 방식은 일부 또는 특정 기준에 따라 모든 행에 대한 데이터를 검색 할 수 있습니다.

적용 검색과 행에 대한 데이터를 검색하려면 다음 documentation에서

table.rows({ 'page': 'current', search: 'applied' }).data(); 

:

table.rows({ search: 'applied' }).data(); 

적용 검색을 현재 페이지에 행에 대한 데이터를 검색하려면

을 반환 된 배열의 데이터 순서와 데이터를 가져올 행 (검색된 행, 보이는 행 e tc)은 선택된 행을 가져 오는 데 사용되는 rows() 선택기의 selector-modifier 옵션에 의해 제어됩니다.

코드 및 데모는 updated example을 참조하십시오.

+0

건배, 완벽한 솔루션. 나는 이것을 간과하고 놀고 있었다 : https : //datatables.net/reference/type/column-selector# {integer} : visIdx – user3770935

관련 문제