0

使用此数据表代码寻找有关在何处放置 fnSort 的帮助,以使默认排序第二列而不是第一列。我有:

dataClones['keyword_table_<?php echo ceil($countCallsCounter/7); ?>']=document.getElementById('keyword_table_<?php echo ceil($countCallsCounter/7); ?>').cloneNode(true);

    $('#keyword_table_<?php echo ceil($countCallsCounter/7); ?>').dataTable( {
    //"sDom": "<'row'<'span6'l><'span6'f>r>t<'row'<'span6'i><'span6'p>>",
    "sDom":"<<'span6'l><'span6'f>r>t<<'span6'i><'span6'p>>",
    "sPaginationType": "bootstrap",
    "oLanguage": {
    "sLengthMenu": "_MENU_ records per page"
    }

} 
);

我知道我需要添加http://datatables.net/api#fnSort但我对 JS 并不太熟悉,所以如果可能的话,需要一些快速帮助。

谢谢

4

1 回答 1

3

您所要做的就是为 $(selector).datatable() 调用设置一个变量 =。然后你可以调用 variable.fnSort()。

var oTable; // Make sure this is within scope of your function, or where you want to execute the sort.

dataClones['keyword_table_<?php echo ceil($countCallsCounter/7); ?>']=document.getElementById('keyword_table_<?php echo ceil($countCallsCounter/7); ?>').cloneNode(true);

    oTable = $('#keyword_table_<?php echo ceil($countCallsCounter/7); ?>').dataTable( {
    //"sDom": "<'row'<'span6'l><'span6'f>r>t<'row'<'span6'i><'span6'p>>",
    "sDom":"<<'span6'l><'span6'f>r>t<<'span6'i><'span6'p>>",
    "sPaginationType": "bootstrap",
    "oLanguage": {
    "sLengthMenu": "_MENU_ records per page"
    }

} 
);

function onSort(){
    oTable.fnSort([0,'asc']);
}

此外,如果您在初始化数据表时知道要排序的列,您可以:

$('#example').dataTable( {
    "aaSorting": [[ 4, "desc" ]]
} );

http://datatables.net/api#fnSort http://datatables.net/release-datatables/examples/basic_init/table_sorting.html

于 2013-02-10T03:10:18.080 回答