DataTables 1.10 — не отображаются результаты

Это моя установка.

Javascript/jQuery:

$('#list').dataTable({
    paging: false,
    serverSide: true,
    ajax: {
        url: "/search/",
        data: function (d) {
            return $.extend({}, d, {
                lid: Label.selectedId
            });
        }
    }
});

HTML

<table id="list" class="table table-striped" width="100%">
    <thead>
    <tr>
        <th>Title</th>
        <th>First Name</th>
        <th>Last Name</th>
        <th>URL</th>
    </tr>
    </thead>
    <tbody>

    </tbody>
</table>

Ответ JSON

{"data": [["Test", "", "", ""]], "recordsTotal": 1, "draw": 1, "recordsFiltered": 1}

Он вызывается вручную, делая следующее:

$('#list').DataTable().ajax.reload();

Но таблица не меняется. Я делал это много раз с DataTables 1.9 без сучка и задоринки - есть идеи?


ОБНОВЛЕНИЕ

Я обнаружил, что если я отключу serverSide, это сработает.


person Kerry Jones    schedule 11.06.2014    source источник
comment
Нет, в консоли ничего не отображается.   -  person Kerry Jones    schedule 12.06.2014
comment
Я бы попробовал установить «processing»: true, чтобы вы могли определить, думает ли datatables.   -  person ZenCodr    schedule 12.06.2014
comment
Я пробовал это раньше, и он застрял там ... все еще без вывода на консоль.   -  person Kerry Jones    schedule 12.06.2014


Ответы (1)


Я нашел проблему. Это было с draw в ответе JSON. Всегда было 1.

Если вы используете serverSide: true, это означает, что draw будет отправлено как переменная, и она должна быть возвращена.

Дополнительная информация здесь: http://datatables.net/manual/server-side

person Kerry Jones    schedule 13.06.2014
comment
Спасибо!!! Это сводило меня с ума. Работал как шарм после возврата переменной draw с сервера. - person Ligemer; 26.01.2016