我一直在使用數據表一段時間,但顯然,我沒有以正確的方式使用它們。jquery數據表功能無法操作
在過去,我將開始我的數據表使用$。員額,具體如下:
$(document).ready(function() {
$.post('process/recordTables.php', function(data)
{
var table = $('#example1').DataTables();
table.clear();
var obj = JSON.parse(data);
obj.forEach(function(item)
{
table.row.add([item.column1, item.column2, //and so on]);
});
table.draw();
});
});
上面的代碼工作。我的數據表打印我需要的數據。在obj.forEach中,如果需要,我可以設置具有href標記和其他功能的列。
但是,如果我想能夠在設定的時間間隔重新加載數據表,我不能使用上面的方法。它必須使用「ajax」方法。
幾個試錯後,使用下面的代碼,我能夠打印出的jQuery數據表的「正確」的形式(和使用):
$(document).ready(function()
{
$('#example1').DataTable({
"processing": true,
"serverSide": true,
"ajax": {
"url": "process/recordTables.php", // same url as the above code
"type": "POST",
"dataSrc": ''
},
"columns": [
{ "data": "" },
{ "data": "column1" },
{ "data": "column2" },
{ "data": "column3" },
// and so on
],
"iDisplayLength": 25,
"order": [[ 3, "desc" ]],
"scrollY": 550,
"scrollX": true,
"bDestroy": true,
"stateSave": true,
// few others that don't seem to affect functionality
});
});
使用代碼立即上面,我能夠使用$ .post方法顯示相同的數據。
但是......沒有一項功能可行。排序不起作用。分頁,搜索過濾器和表格底部的數據信息顯示「0個0條目」。什麼都沒有
我錯過了什麼來解決這個問題?我很困惑。
預先感謝您。
*編輯*
下面是HTML表:
<table id="example1" class="table table-bordered table-hover table-condensed">
<thead>
<tr>
<th></th>
<th>Column1</th>
<th>Column2</th>
<th>Column3</th>
// and so on
</tr>
</thead>
<tbody>
</tbody>
</table>
你能後的行動與此DataTable相關的HTML?並且具有值爲''的屬性dataSrc將不顯示數據。完全刪除該屬性。 – Cratebox99
添加了表格。我確實有TR和TD標籤與TBODY,但仍得到相同的結果。 –
您的HTML很好,只要th計數與dataTable定義中的列匹配,就不需要觸摸它。 – Cratebox99