我使用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")) ;
}
它没有用,所以出了问题。你知道怎么做吗?
如果您需要更多信息,请与我们联系。
答案 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")) ;
}