Javascript 将JSON对象加载到Datatable Jquery中时出现问题

Javascript 将JSON对象加载到Datatable Jquery中时出现问题,javascript,jquery,ajax,json,datatable,Javascript,Jquery,Ajax,Json,Datatable,我正在使用DataTables和Jquery,我有一个JSON对象数据源,我想通过Ajax获取并显示在表中 JSON数据从/live/logurl返回,格式如下: { "Logs": [ { "date": "2015-04-22T14:00:39.086Z", "eventType": "event1", "str": "Application startup" },

我正在使用
DataTables
Jquery
,我有一个
JSON
对象数据源,我想通过
Ajax
获取并显示在表中

JSON
数据从
/live/log
url返回,格式如下:

{
    "Logs": [
        {
            "date": "2015-04-22T14:00:39.086Z",
            "eventType": "event1",
            "str": "Application startup"
        },
        {
            "date": "2015-04-22T14:01:27.839Z",
            "eventType": "event2",
            "str": "test Logged in"
        }
    ]
}
我的表格HTML:

<table id="example" class="display" cellspacing="0" width="100%">
  <thead>
    <tr>
      <th>Date</th>
      <th>Event</th>
      <th>Description</th>
    </tr>
  </thead>

  <tfoot>
    <tr>
      <th>Date</th>
      <th>Event</th>
      <th>Description</th>
    </tr>
  </tfoot>
</table>
我可以通过调试器看到
JSON
数据被正确提取

我似乎在与
JSON
数据相关的
datatables
js中发现了一个错误

fnInitalise中的值aData为null-未捕获类型错误:无法读取未定义的属性“长度”。数据表被卡住了,说“正在加载…”


我确信这可能是由于我的
JSON
数据格式。有人能给我指出正确的方向吗?

您应该访问
数据
中的
日志
对象,因为在构建表时,
列将循环通过该数组。该插件的工作原理是假设数组的名称为
data
,即:

{
    "data": [
        // Array of objects
    ]
}
但由于您在本例中使用的是
Log

{
    "Logs": [
        // Array of objects
    ]
}
…您需要手动指定
dataSrc
属性(因为您使用的是):


试试下面的JSA让我知道:。嗨,麻瓜,谢谢,刚刚尝试了这个建议,没有改变相同的错误:(也许你需要数组json而不是一个键的对象。
{
    "Logs": [
        // Array of objects
    ]
}
$(document).ready(function() {
  $('#example').dataTable( {
    "ajax": {
        "url": "/live/log",
        "dataSrc": "Logs"
    },
    "columns": [
        {"data": "date"},
        {"data": "eventType"},
        {"data": "str"}
      ]

  });
});