【发布时间】:2014-10-14 09:28:32
【问题描述】:
我正在尝试改进此数据表的加载时间性能。到目前为止,它只加载了 700 多条记录,而且速度已经很慢了。在这种情况下,我是否正确使用了 deferRender?它似乎没有改变或改善任何东西。我认为这可能是 loadJSON 功能阻碍了它。
$(document).ready( function () {
$('#log_table').dataTable( {
"deferRender": true,
"dom": '<"top"f>rt<"bottom"lp><"clear">',
"fnCreatedRow": function( nRow, aData, iDataIndex ) {
},
"aoColumnDefs": [
{
"targets": [ 0 ],
"visible": false,
"searchable": false
}
]
} );
} );
function loadJSON(data){
console.log(data);
var t = $('#log_table').DataTable();
t.clear();
var json = $.parseJSON(data);
$.each(json, function(key,value) {
t.row.add( [
value.uuid,
value.date,
value.username,
value.loggedTable,
value.action_performed,
value.queryString
] ).draw();
});
}
$("#audit_trail_menu").click(function(){
$.ajax({
url: './inc/AuditTrailScripts.php?argument=loadAllRecords',
success: function(data) {
loadJSON(data);
}
})
});
PHP
if(!empty($_GET["argument"])){
/*
* loadAllRecords
* Fetch all records to load into the datatable
* table to fetch from - media
*/
if ($_GET['argument']=='loadAllRecords'){
$json= fetchAll();
echo json_encode($json);
}
};
【问题讨论】:
标签: javascript php jquery ajax datatables