The*_*mca 5 sorting datatable jquery
我正在尝试做一个任务,就像这个问题一样。
它让我找到了一个不错的插件。
http://datatables.net/plug-ins/api/fnSortNeutral
jQuery.fn.dataTableExt.oApi.fnSortNeutral = function ( oSettings )
{
/* Remove any current sorting */
oSettings.aaSorting = [];
/* Sort display arrays so we get them in numerical order */
oSettings.aiDisplay.sort( function (x,y) {
return x-y;
} );
oSettings.aiDisplayMaster.sort( function (x,y) {
return x-y;
} );
/* Redraw */
oSettings.oApi._fnReDraw( oSettings );
};
Run Code Online (Sandbox Code Playgroud)
但是我不知道“如何使它工作”。任何人都知道什么是“oApi”,或者在我使用这个插件之前我需要更多的设置吗?
因为我的脚本Uncaught TypeError: Cannot read property 'oApi' of undefined 在我复制脚本后立即出现,并且该错误使函数未定义。我该怎么办 ?
小智 5
对于 DataTable 1.10+可以使用order.neutral()插件
插件代码
$.fn.dataTable.Api.register( 'order.neutral()', function () {
return this.iterator( 'table', function ( s ) {
s.aaSorting.length = 0;
s.aiDisplay.sort( function (a,b) {
return a-b;
} );
s.aiDisplayMaster.sort( function (a,b) {
return a-b;
} );
} );
} );Run Code Online (Sandbox Code Playgroud)
CDN: cdn.datatables.net/plug-ins/1.10.19/api/order.neutral().js
例子
// Return table to the loaded data order
table.order.neutral().draw();Run Code Online (Sandbox Code Playgroud)
您提供的链接中有一个使用示例。
var table = $('#example').dataTable();
// Sort in the order that was originally in the HTML
table.fnSortNeutral();
Run Code Online (Sandbox Code Playgroud)
编辑尝试在初始化时给它一个“order”属性:JSBin
jQuery.fn.dataTableExt.oApi.fnSortNeutral = function ( oSettings )
{
/* Remove any current sorting */
oSettings.aaSorting = [];
/* Sort display arrays so we get them in numerical order */
oSettings.aiDisplay.sort( function (x,y) {
return x-y;
} );
oSettings.aiDisplayMaster.sort( function (x,y) {
return x-y;
} );
/* Redraw */
oSettings.oApi._fnReDraw( oSettings );
};
$(document).ready(function() {
var oTable = $('#example').dataTable({
"order" : [[ 1, "desc" ]]
});
setTimeout(function() {
oTable.fnSortNeutral()
}, 1000)
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7283 次 |
| 最近记录: |