问题
This is my setup.
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 Response
{"data": [["Test", "", "", ""]], "recordsTotal": 1, "draw": 1, "recordsFiltered": 1}
It is getting called manually by doing this:
$('#list').DataTable().ajax.reload();
But the table does not change. I've done this many times with DataTables 1.9 without a hitch -- any ideas?
UPDATE
I discovered if I turn off serverSide
, it works.
回答1:
I found the problem. It was with the draw
in the JSON response. It was always 1.
If you use serverSide: true
, that means it is going to send draw
as a variable, and it must be returned.
More information here: http://datatables.net/manual/server-side
来源:https://stackoverflow.com/questions/24171141/datatables-1-10-not-showing-results