【发布时间】:2012-10-02 14:15:06
【问题描述】:
我正在尝试如下填充dataTable:
$("#my-datatable").dataTable( {
"sAjaxSource" : "/someURLOnMyServer",
"bDestroy" : true,
"fnServerParams" : function(serverParams) {
serverParams.push(
{
"name" : "widget",
"value" : token
}
);
}
});
以及它正在填充的 HTML 表格:
<table id="my-datatable">
<thead>
<tr>
<th>Type</th>
<th>Value</th>
<th>ID</th>
<th>Fizz</th>
<th>Buzz</th>
</tr>
</thead>
<tbody></tbody>
</table>
根据 Firebug,从服务器返回的 JSON 是:
[
{
"id":1,
"attributeType":{
"id":1,
"name":"test1",
"tag":"test-type",
"is-dog":false
},
"attributeValue":{
"id":null,
"name":"blah",
"tag":"BLAH"
},
"buzz":1,
"fizz":"53abc"
}
]
但 Firebug 在其控制台中抛出以下 JavaScript 错误:
TypeError: aData is undefined
[Break On This Error]
for ( i=0 ; i<aData.length ; i++ ) --> jquery.dataTables.js (line 2541)
谁能发现哪里出了问题?要么我没有正确设置我的dataTable 对象,要么返回的 JSON 与它试图填充的 HTML 表的“模式”不匹配。不管怎样,我迷路了。提前致谢!
【问题讨论】:
-
对 jQuery dataTables 了解不多,但我想知道返回的 JSON 作为数组是否可能是问题所在。
标签: javascript jquery json datatables