当源数据是对象数组时,数据表中的默认排序
Default sorting in datatables when source data is an array of objects
https://datatables.net/examples/basic_init/table_sorting.html
$(document).ready(function() {
$('#example').DataTable( {
"order": [[ 3, "desc" ]]
} );
} );
文档中的示例使用数组作为源,并通过指定索引来定义排序。
当源是对象数组时,如何指定默认顺序。
我试着把它写成
"order": [[ "attribute_name", "desc" ]]
但它不起作用。我收到这个错误
未捕获的类型错误:无法读取未定义的属性"aDataPort">
根据文档,订单函数的第一个参数(或者在您的情况下订单对象数组中的第一个位置(必须是您希望排序的列的索引编号。
为了解决这个问题,您可以将属性的值设置为返回所需列索引的函数。例如:
$(document).ready(function() {
function findColumn(input) {
return function(element) {
return element.sTitle === input;
}
}
var myDataTable = $('#example').DataTable();
var columnIWant = "Office";
var indexOfThatColumn = myDataTable.context[0].aoColumns.find(findColumn(columnIWant)).idx;
myDataTable.order([indexOfThatColumn, "desc"]);
});
诚然,这是非常丑陋的(尽管功能性很强!(,但通过一些重构,这可能是一个不错的解决方案。
相关文章:
- 用程序搜索JQuery数据表中的文本
- 具有rowGrouping的数据表无法隐藏列
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 将单击事件添加到数据表
- 使用带有参数的数据表sAjaxSource
- 阻止数据表上的默认顺序事件
- Jquery 数据表默认筛选多列
- 我如何更改 jQuery 数据表默认行计数显示
- 如何使用 JS 数据表将默认值设置为字段
- 覆盖Magento中的默认数据表单提交JS活动
- 数据表设置默认选项
- 使用Javascript在primefaces数据表中设置默认过滤器
- 将数据表打印为默认表
- 数据表默认regex只搜索开始
- 如何设置数据表默认的sEmptyTable值
- 当源数据是对象数组时,数据表中的默认排序
- Jquery数据表默认编辑点击事件
- 覆盖数据表默认搜索功能
- 无法指定数据表 javascript 的默认列排序
- 数据表-默认禁用所有功能