2015-05-20 4 views
2

Я использую datatable для моего приложения, моя потребность в том, что я хочу, чтобы общее количество строк в datatable onload. Как получить это. Вот мой код i я размещениеКак подсчитать количество строк в datatable

$(document).ready(function() { 
$('#jobSearchResultTable').dataTable({ 
     responsive: true, 
     "scrollY": 500, 
     "scrollCollapse": true, 
     "jQueryUI":  true, 
     "aaSorting": [] 

    }); 
)}; 

Как получить общее количество строк в DataTable OnLoad

+0

dataTable не определен, показывая – lucifer

ответ

4
$(document).ready(function() { 

// Initialize your table 
var table = $('#jobSearchResultTable').dataTable(); 

// Get the total rows 
alert(table.fnGetData().length); 
}); 

Источник: jquery datatables row count across pages

Другой метод:

table.fnSettings().fnRecordsTotal(); 

см который работает для вас

Источник: http://datatables.net/forums/discussion/2278/how-to-get-number-of-rows

+0

вещь об этом ответе заключается в том, что я буквально не использовал это Таблица данных. Я просто искал ее и нашел ответ. Следовательно, ОП - ленивый парень. – Ruchan

+0

не работает для меня, таблица динамически заполнена. –

1

по вашему описанию я полагаю, что у вас есть таблица с идентификатором = «jobSearchResultTable».

Попробуйте это, это может сработать для вас.

$(document).ready(function() { 
    $('#jobSearchResultTable').dataTable({ 
    responsive: true, 
    "scrollY": 500, 
    "scrollCollapse": true, 
    "jQueryUI":  true, 
    "aaSorting": [] 

    }); 
    var count=0; 
    $('#jobSearchResultTable tr').each(function(){ 
     count++; 
    }); 
    alert(count); 

)};

Это будет показывать количество строк в таблице.

+0

, но я хочу, чтобы общее количество строк, то есть оно показывало текущее количество строк в строке, то есть, если таблица имеет 50 строк, тогда я хочу, чтобы счет был равен 50, а не как 10 perpage – lucifer

+0

Я думаю, что это правильный ответ для вас (http://stackoverflow.com/questions/3238047/jquery-datatables-row-count-across-pages?lq=1) – wupendra

0

// получаем количество целых строк
table.rows(). Eq (0) .length;

+0

Это должен быть комментарий, а не ответ. Я знаю, что у вас нет привилегии комментария, но вы можете получить достаточную репутацию за один день ... – Badacadabra

2

Если вы используете новые DataTables (v1.10 +), у вас нет доступа к некоторым законным функциям, таким как fnGetData().

Вместо этого, попробуйте следующее:

var table = $('#table_id').DataTable(); 
var table_length = table.data().count(); 

Если вы используете подкачки (который я был), и нужно общее количество по всем страницам, попробуйте следующее:

var table = $('#table_id').DataTable({ 
    'paging': true 
}); 

var length = table.page.info().recordsTotal; 

Источники:

https://datatables.net/reference/api/count()

https://datatables.net/reference/api/page.info()

+0

table.page.info(). RecordsTotal; это отлично работает –

+0

table.data(). count() дает общее количество ячеек (tds) в таблице данных. table.data(). rows(). count() дает вам количество строк. – Srinivas

Смежные вопросы