jQuery dataTables - 如何克隆标题以创建页脚

时间:2015-05-17 13:37:21

标签: jquery datatables jquery-datatables

我使用JSON为DataTable创建数据,但也使用标头。但是,我注意到没有创建页脚。所以我需要手动。我的想法是克隆标题以创建页脚,但我不知道该怎么做。

我正在使用以下代码:

$.getJSON("http://127.0.0.1/info", function( data ) {
  $(document).ready(function() {
$('#log').html( '<table class="display compact" id="log-data" width="100%"></table>' );

var table = $('#log-data').dataTable( {   
  "dom": '<"tblContainerT"T><"tblContainerTop"lf><rt><"bottom"ip>',
  "tableTools": {
    "sSwfPath": "/swf/copy_csv_xls_pdf.swf",
    "TableToolsInit.sTitle": "data-export".
  },
  "data": data['tbody'],
  "columns": data['thead'],
  "lengthMenu":[[25,200,500,-1],[25,200,500,"All"]],
  'fnInitComplete' : function () {
    $("thead tr").clone().appendTo($("tfoot tr")) ;
  }
});

new $.fn.dataTable.FixedHeader( table, {
      bottom: true
});

  });
});

相关部分如下:

  'fnInitComplete' : function () {
    $("thead tr").clone().appendTo($("tfoot tr")) ;
  }

它没有用,所以出了问题。你知道怎么做吗?

如果您需要更多信息,请与我们联系。

1 个答案:

答案 0 :(得分:3)

很难说我们什么时候不知道你的标记是怎样的。

如果您只有<tfoot></tfoot>

fnInitComplete : function() {
   $("thead tr").clone().appendTo($("tfoot")) ;
}

演示 - &gt;的 http://jsfiddle.net/gu5qvjag/

如果你有<tfoot><tr></tr></tfoot>

fnInitComplete : function() {
    $("thead tr th").each(function(i, th) {
        $(th).clone().appendTo($("tfoot tr"));
    });    
}

演示 - &gt;的 http://jsfiddle.net/uj5dpbua/

更新。遗憾地讲,忽略了<table>本身由码生成太:(

fnInitComplete : function() {
    $("#log-data").append('<tfoot></tfoot>');
    $("#log-data thead tr").clone().appendTo($("#log-data tfoot")) ;
}