尝试从ajax请求加载DataTable,
var url = '/my/url';
var table = $('#m_datatable').DataTable( {
'ajax': {
type: 'GET',
'url': url,
'data': function (d) {
return JSON.stringify( d );
}
}
} );
HTML:
<table id="m_datatable" class="display" width="100%">
<thead>
<tr>
<th>Id</th>
<th>Value1</th>
<th>Value2</th>
</tr>
</thead>
</table>
Ajax请求返回json:
[
{
id: 1801,
value1: 1224589451,
value2: 1665229451
},
{
id: 1802,
value1: 1224589451,
value2: 1665229451
},
{
.
.
.
}
]
DataTable在控制台中显示为空并抛出以下错误:
Uncaught TypeError: Cannot read property 'length' of undefined http://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js
答案 0 :(得分:2)
您需要告诉表格如何处理数据,添加:
,
'columns': [{
'data': 'id'
}, {
'data': 'value1'
}, {
'data': 'value2'
}]
......应该这样做,希望有所帮助。 (工作示例:https://jsfiddle.net/annoyingmouse/vvmcyacv/)