DataTables无法识别DOM中的数据

时间:2013-06-09 19:30:31

标签: dom datatables

我有这个简单的表,tbody用loadLogsTable()填充;功能

<table id="logsTable" style="width:100%;text-align:center;">
<thead>
<th style="width:9%;">Choose</th>
<th style="width:15%;">Ip</th>
<th style="width:15%;">Hostname</th>
<th style="width:50%;">Log</th>
<th style="width:15%;">Date</th>
</thead>
<tbody id="logData"></tbody>
</table>

这是loadLogsFunction:

function loadLogsTable()
{
jQuery.ajax({
type: "POST",
async : true,
url: "classes/classesController.php",
data: { method: "getLogsList"},
contentType : ('application/x-www-form-urlencoded'),
dataType : "html" ,
success : function(data){
$("#logData").html(data);
}  
});
}

我用dataTables初始化这个表,但它没有对它们进行分页(我每页选择10行),看起来它看不到表的数据。我也无法搜索表的数据。

$(document).ready(function()
{  
loadLogsTable();

$('#logsTable').dataTable({  // Init pagination
"aoColumnDefs": [{ "bSortable": false, "aTargets": [ 0,1,2,3,4] } ],
"sPaginationType": "full_numbers" ,
"bLengthChange": false,
iDisplayLength": 10
});
});

2 个答案:

答案 0 :(得分:0)

问题1:您的iDisplayLength未正确用引号括起来。

你有: iDisplayLength": 10

但如果您有以下情况,则可以避免错误: "iDisplayLength": 10

这应该可以消除您的javascript错误 http://jsfiddle.net/MmDFN/1/

问题2:您是否检查了数据表站点上的 ajax数据源服务器端处理示例,或查看了mrender?我不能说你使用带数据表的ajax的方式是常规的 http://www.datatables.net/examples/
http://www.datatables.net/ref#mrender

答案 1 :(得分:0)

mg1075是正确的iDisplayLength缺少报价。

http://jsfiddle.net/nr5Cw/2/

"<--missing