使用jQuery DataTables恢复原始排序顺序

我从已经排序的数据库中检索数据,有时我需要重置回初始加载顺序。 我试过这个fnSortNeutral ,它不适用于新的API DataTables 1.10。

我试过这个

https://datatables.net/forums/discussion/26430/fnsortneutral-fails-with-new-api

不知道这是做什么的,因为它重置了一些但绝对不会回到原始加载顺序,而是它自己的排序顺序

 $('#removesort').click( function() { table.order.neutral().draw(); }); 

我不能使用它,因为排序列不存在于Datatable上以便能够使用它进行排序,sort应用于数据库查询

 table .order( [[ 1, 'asc' ], [ 2, 'asc' ]] ) .draw(); 

如何获取数据表以显示在单击时从数据库检索的原始加载顺序?

根据要求,这基本上是基本的正常代码,我可以找到很长一段时间来添加另一列进行排序,但我觉得我过于复杂地添加另一个字段纯粹为了排序,如果订单可以在数据表中轻松重置。 这不可能吗?

  var table = $('#example').DataTable( { order: [], "columnDefs": [ { "targets": 0, "orderable": false } ], "sAjaxSource": "external/load", "oLanguage": { "sLoadingRecords": "", "sEmptyTable": "No data found" }, "fnServerData": function ( sSource, aoData, fnCallback, oSettings ) { if($('#order')) { var order = $('#order').val(); aoData.push( { "name": "order", "value": order } ); } setTimeout(function() { oSettings.jqXHR = $.ajax( { "dataType": 'json', "type": "POST", "url": sSource, "data": aoData, "timeout": 15000, "success": fnCallback, "complete" : function(){ }, "error": function (e) { console.log(e.message); } }); },1000); } }); 

你试过在’抽奖’之后放置’订单’吗? 喜欢。

 .draw(); .order( [[ 1, 'asc' ], [ 2, 'asc' ]] ) 

在我的情况下,我只是使用

 .draw().order( [[ 0, 'desc' ]] ); 

它的工作原理