2014-10-10 4 views
2

DataTables에서 필터링 된 열의 결과를 합산하려고합니다. 나는 그들의 웹 사이트에 묻는 질문을 보았고 사람들은 this method을 사용하여 성공했다. '정의되지 않은 함수 아니다 "DataTables에서 필터링 된 열 합계

data = table._('td:nth-child(10)', {"filter": "applied"}); 

곳 catch되지 않은 형식 오류가.'표 '입니다 :

그러나, 나를 위해 유사한 코드가 생성

var table = $('#dataTable').DataTable({ 
// my initialization data 
}); 
+0

나는이 도움이되는 것을 발견했다 : https://datatables.net/examples/advanced_init/footer_callback.html – Ryan

답변

6

_ (밑줄 기능)에 보인다 이론적으로는 $('#dataTable').dataTable() (이전 생성자)과 작동해야하지만 예상 한 결과를 얻지는 못합니다 (적어도 나를 위해).

그러나이 볼 - 당신은 질문 헤더에 원하는>http://datatables.net/plug-ins/api/sum()

jQuery.fn.dataTable.Api.register('sum()', function() { 
    return this.flatten().reduce(function (a, b) { 
     return (a*1) + (b*1); // cast values in-case they are strings 
    }); 
}); 

var table = $("#example").DataTable(); 

$("#example").on('search.dt', function() { 
    console.log(table.column(0, {page:'current'}).data().sum()); 
}); 

이 dataTables의 1.10.x에서 동일한 기능을 제공합니다.

참조 데모 - 완벽하게 잘 또한>http://jsfiddle.net/6qLwkwud/

table.column(0, {"filter": "applied"}).data().sum() 작품.

+2

이것을 참조하는 다른 사람은 https://datatables.net/reference/type/selector-modifier에서 더 많은 것을 제공한다. info 당신은 아직도 적용된 데이터 세트를 얻지 못한다. – Antony