Как я могу получить значение ‘offset’ в плагине Jquery Datatables

#jquery #datatables

#jquery #таблицы данных

Вопрос:

Я хочу напечатать serial-no на каждой странице. Этот serial-no всегда должен быть в порядке возрастания, независимо от сортировки любого столбца. Предположим, я нахожусь на странице # 3, а ‘limit’ установлен в 10.

Тогда столбец serial-no не должен печататься 21, 22, 23, …, 30.

Как я могу получить это в плагине jQuery datatables.

Заранее спасибо

Ответ №1:

Есть fnRowCallback который должен позволить вам делать то, что вы хотите:

Эта функция позволяет вам ‘обрабатывать post’ каждую строку после того, как она была сгенерирована для каждого рисования таблицы, но до того, как она будет отображена на экране.

И четвертый параметр обратного вызова равен

Индекс данных в полном списке строк (после фильтрации)

Таким образом, вы должны иметь возможность использовать четвертый параметр обратного вызова, чтобы добавить номер строки к строке (который является первым параметром обратного вызова).

Ответ №2:

на самом деле вам не нужно ни о чем беспокоиться, просто сделайте это просто

создать s.no со стороны сервера точно так же, как показано ниже в json… тогда вам не нужно беспокоиться ни о чем подобном offset

JSON

 {
    "sEcho": 0,
    "iTotalRecords": 12,
    "iTotalDisplayRecords": 12,
    "aaData": [
["1","item1"],["2","item1"],["3","item1"],["4","item1"],["5","item1"],["61","item1"],["7","item1"],["8","item1"],["9","item1"],["10","item1"],["11","item1"],["12","item1"]
    ] 
}
  

СКРИПТ

 <script type="text/javascript">
$(document).ready(function() {
    var oTable = $('#category_table').dataTable( {
    "aoColumns": [
        { "sClass": "number", "bSortable": false },
        { "sClass": "nonedit", "bSortable": false }

        ],
        "bProcessing": true,
        "bServerSide": true,
        "bJQueryUI": true,
        "sPaginationType": "full_numbers",
        "sAjaxSource": "serverpage.php",
        "fnDrawCallback": function () {

        }

    }); 
});     
</script>
  

РАЗМЕТКА

 <table width="100%" cellpadding="0" cellspacing="0" border="0" class="display" id="category_table">
    <thead>
        <tr>
            <th width="3%" style="text-align:center;">S.No</th>
            <th>item Name</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td colspan="5" class="dataTables_empty">Loading data from server</td>
        </tr>
    </tbody>
    <tfoot>
        <tr>
            <th width="3%" style="text-align:center;">#</th>
            <th>item Name</th>
        </tr>
    </tfoot>
</table>