使用优秀的dataTables jQuery插件,我无法为“aaSorting”参数创建动态数组。根据文档,“aaSorting”参数采用包含列和排序顺序的数组(或数组数组)。我需要为我正在处理的表创建一个动态数组,并使用我为表aaSorting param添加的sortCol和sortOrder的自定义表属性的值。我以为我能做到这一点......
var sortCol = $('#mytable').attr('sortCol');
var sortOrder = $('#mytable').attr('sortOrder');
var sortData = [];
if(sortCol != '' && sortOrder != ''){
sortData[sortCol] = sortOrder;
}
然后在我的dataTable初始化中,使用sortData var作为“aaSorting”参数的值。但是,这不起作用。任何人都可以提供有关如何构造数组的任何见解,以便dataTables使用它进行排序。
var myTableObject = dataTable({
"oLanguage": "Search",
"aaSorting": sortData
});
答案 0 :(得分:3)
aaSorting是一个数组数组。每个嵌套数组都有两个元素。第一个是列号,第二个是顺序(即asc或desc)。您正在使用一维数组进行aaSorting,请尝试[[0, "asc"]]
var sortCol = $('#mytable').attr('sortCol');
var sortOrder = $('#mytable').attr('sortOrder');
var sortData = [];
if(sortCol != '' && sortOrder != ''){
sortData.push( [sortCol, sortOrder] );
}
// Sort by 3rd column first, and then 4th column
$(document).ready( function() {
$('#example').dataTable( {
"aaSorting": [[2,'asc'], [3,'desc']]
} );
} );