一旦页面加载,是否可以将默认列设置为排序?我想对我网站上的不同表使用一个数据表调用。是否可以添加th
类来实现此目的?
我还想在某些列上禁用排序,因为我正在寻找一个数据表调用来做所有事情,是否有一个类我可以添加到th会使它无法解决?
这是我所谓的dataTable脚本
if (jQuery().dataTable) {
$('#table-list-items').dataTable({
"fnDrawCallback" : function () {
},
"aLengthMenu": [
[10, 15, 25, 50, 100, -1],
[10, 15, 25, 50, 100, "All"]
],
"iDisplayLength": 25,
"oLanguage": {
"sLengthMenu": "_MENU_ Records per page",
"sInfo": "_START_ - _END_ of _TOTAL_",
"sInfoEmpty": "0 - 0 of 0",
"oPaginate": {
"sPrevious": "Prev",
"sNext": "Next"
}
},
"aoColumnDefs": [{
'bSortable': true,
'aTargets': [0]
}]
});
}
答案 0 :(得分:38)
是的,您可以使用aaSorting
选项执行此操作,例如:
$('.table-asc0').dataTable({
aaSorting: [[0, 'asc']]
});
按顺序升序第一列。
$('.table-asc1').dataTable({
aaSorting: [[1, 'asc']]
});
对于DataTables 1.10
,aaSorting
已被order
取代。
$('.table-asc0').dataTable({
order: [[0, 'asc']]
});
答案 1 :(得分:17)
SET INITIAL ORDER (DataTables 1.10)
使用order
设置表格的初始顺序。
例如,按降序排序第二列:
$('#example').dataTable({
"order": [[ 1, 'desc' ]]
});
请参阅this jsFiddle以获取代码和演示。
禁用字段排序(DataTables 1.10)
使用columnDefs
和orderable
禁用某些列的排序。
例如,要禁用第三列和第四列的排序:
$('#example').dataTable({
"columnDefs": [
{ "targets": [2,3], "orderable": false }
]
});
请参阅this jsFiddle以获取代码和演示。
设置初始订单并禁用同一列的分类(DataTables 1.10)
您可以合并order
选项以设置表格的初始顺序,并orderable
禁用对同一列的排序。
例如:
$('#example').dataTable({
"order": [[ 0, 'desc' ]],
"columnDefs": [
{ "targets": [0], "orderable": false }
]
});
请参阅this jsFiddle以获取代码和演示。
答案 2 :(得分:6)
您可以通过表格HTML上的data-order
数据属性执行此操作,这将为您提供逐个表格所需的灵活性,同时仍允许您使用单个调用来初始化您的dataTables:
<table className="table table-condensed table-striped" data-order="[[ 2, "asc" ]]" id="tableId">
<thead>
<tr>
<th>Col1</th>
<th>Col2</th>
<th>Col3</th>
<th>Col4</th>
<th>Col5</th>
<th>Col6</th>
</tr>
</thead>
<tbody>
<tr>
<td>Val1</td>
<td>Val2</td>
<td>Val3</td>
<td>Val4</td>
<td>Val5</td>
<td>Val6</td>
</tr>
</tbody>
</table>
答案 3 :(得分:0)
只需包含以下代码:
if (!preg_match_all("/(?![[:alnum:]]|@|-|_|\.)./",$email)) { .. }
参考:
https://datatables.net/examples/basic_init/table_sorting.html
答案 4 :(得分:0)
is corect and worked:
$('#admin').DataTable({
"aaSorting": [[3, 'desc']],
"bPaginate": true,
"bProcessing": true,
"columns": [
{'data' : 'request_code'},
{'data' : 'name_receiver'},
{'data' : 'name_area'},
{'data' : 'created_at'},
{'data' : 'state'},
{'data' : 'city'},
{'data' : 'history'},
],
"ajax": "{{route('my.route.name')}}",
dom: 'Bfrtip',
buttons: ['copy', 'excel', 'print'],
});