【发布时间】:2018-11-03 19:50:38
【问题描述】:
所以我正在使用 Datatables.JS 创建一个从 MySQL 数据库返回的结果表。当我返回结果时,我试图以 DESC 顺序显示它们。我尝试在 MySQLi 查询中使用 ORDER BY DESC,这确实以正确的顺序返回结果,但是当数据表读取结果时,它会以某种随机顺序显示它们。因此,我尝试使用数据表设置按我的 ID 列排序,但保持该列隐藏。每当我尝试添加任何代码来处理排序时,排序问题本身都会得到解决,但我所有的分页和按钮(例如允许用户选择他们想要查看的列的按钮)都会消失。下面是我用来选择这个数据表所需的功能和设置的 JS,谁能告诉我如何在不破坏它的情况下添加 ID 列 DESC 的排序?
$(document).ready(function() {
$('#datatable').DataTable();
//Buttons examples
var table = $('#datatable-buttons').DataTable({
pageLength: 20,
lengthChange: false,
searching: false,
buttons: ['copy', 'excel', 'pdf', 'colvis']
});
table.buttons().container()
.appendTo('#datatable-buttons_wrapper .col-md-6:eq(0)');
} );
添加排序:然后选择列并定义顺序似乎破坏了所有其他设置,我失去了分页和默认结果长度以及页面上的所有控制按钮。
$(document).ready(function() {
$('#datatable').DataTable();
//Buttons examples
var table = $('#datatable-buttons').DataTable({
pageLength: 20,
lengthChange: false,
searching: false,
buttons: ['copy', 'excel', 'pdf', 'colvis'],
order: [[ 1, desc ]]
});
table.buttons().container()
.appendTo('#datatable-buttons_wrapper .col-md-6:eq(0)');
} );
【问题讨论】:
-
desc需要是字符串order: [[ 1, 'desc' ]] -
试过但没有成功
标签: javascript php jquery mysql