我正在尝试完成一个任务,与此问题相同。
- 我有一个工作正常的 jQuery dataTable。
- 我想要一个重置排序的函数,在用户选择任何列之前,将其恢复为与 HTML 中读取的相同状态。
这引导我找到了一个不错的插件。
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 );
};
然而我不知道“如何使它工作”。有人知道什么是“oApi”,或者在我使用这个插件之前需要进行一些更多的设置吗?
因为我的脚本会显示出未捕获的类型错误:无法读取未定义的属性'oApi'
,就在我复制脚本之后,这个错误导致函数变成了未定义。我该怎么办?
table.fnSortNeutral();
这一行之前,插件脚本本身就出现了错误Uncaught TypeError: Cannot read property 'oApi' of undefined
,因此它无法运行。 - Theo YmcaaaSorting:[]
属性,并添加一个按钮来运行重置排序函数。以下是其他人参考的编辑用法: JSBin - Theo Ymca