Php Jquery DataTables:数据未通过Ajax显示在表中

Php Jquery DataTables:数据未通过Ajax显示在表中,php,jquery,ajax,datatable,datatables,Php,Jquery,Ajax,Datatable,Datatables,我的问题是Jquery DataTables在加载时挂起,不会显示php脚本中的任何数据: 这是我的HTML: <!-- Default box --> <div class="box"> <div class="box-header with-border"> <h3 class="box-title">Time Management</h3> <div class="box-tools

我的问题是Jquery DataTables在加载时挂起,不会显示php脚本中的任何数据:

这是我的HTML:

 <!-- Default box -->
  <div class="box">
    <div class="box-header with-border">
      <h3 class="box-title">Time Management</h3>

      <div class="box-tools pull-right">
        <button type="button" class="btn btn-box-tool" data-widget="collapse" data-toggle="tooltip" title="Collapse">
          <i class="fa fa-minus"></i></button>
        <button type="button" class="btn btn-box-tool" data-widget="remove" data-toggle="tooltip" title="Remove">
          <i class="fa fa-times"></i></button>
      </div>
    </div>
    <div class="box-body">
       <table id="example" class="table table-bordered table-hover">
           <thead>
               <tr>
               <th>ID</th>
               <th>Clock In</th>
               <th>Lunch Started</th>
               <th>Lunch Ended</th>
               <th>Clock Out</th>
               </tr>
           </thead>
       </table>
    </div>
    <!-- /.box-body -->
    <div class="box-footer">
      Footer
    </div>
    <!-- /.box-footer-->
  </div>
  <!-- /.box -->

在您收到的json中,没有
数据
属性

如果可以修改json的生成方式,请将所有对象放置在
数据
对象中。。。如中提供的示例所示:

或者,如果您无法修改json,请尝试以下操作:(我没有测试这个…您必须尝试)


编辑

只是为了确保json没有问题…
尝试从另一个ajax请求请求它(作为测试):

如果结果正常,我们将围绕Datatable进行调查。
想法是缩小问题的范围…

;)

根据Louys Patrice Bessette的建议,在PHP方面,我将数组转换为json对象,而不是json数组。一、 然后我取消了选项。因此,不是:

$('#example').DataTable({
   "ajax": "url", 
   "columns" : [
    {"data": "keyname"},
     {"data": "keyname"},
    ]
}) 
我做到了:

   $('#example').DataTable({
   ajax: "url", 
   columns : [
     {"data": "keyname"},
     {"data": "keyname"},
    ]
})

我还删除了
dataSrc
选项。

所以这是一篇文章而不是一个get?这行吗?ajax:{url:'api/timemanageprocess.php',type:'GET',dataSrc:'''}@BryanDellinger不幸的是,它不是。所以你确实看到了“ajax:'api/blahblahblah”,而我认为它应该是ajax:{url:yoururl,键入:'POST',dataSrc:'},剩下的时间stuff@BryanDellinger我曾经尝试过,可惜数据没有填充到表中。我使用>将数组变成了数据对象,数据表无法识别新格式化的信息。我还尝试了第二种可能的解决方案,它不起作用。它的结构是否合理?(使用对象的“数据”数组?是的。它是这样的:{“数据”:[{“传递ID”:“5”,“时钟输入”:“2017-08-10 23:27:13”,“开始午餐”:“2017-08-12 12:58:59”,“结束午餐”:“0000-00-00:00:00”,“时钟输出”:“0000-00-00:00:00”}.)}我想感谢您对我的帮助。我很感激!删除dataSrc以及ajax和列周围的双引号,实际上填充了表,这很奇怪。与Data Tables网站上的示例完全不同。
{
  "data": [
    {
      "name": "Tiger Nixon",
      "position": "System Architect",
      "salary": "$320,800",
      "start_date": "2011/04/25",
      "office": "Edinburgh",
      "extn": "5421"
    },
    /...
  "columns": [
    {"PASS_ID"},
    {"CLOCK_IN"},
    {"START_LUNCH"},
    {"END_LUNCH"},
    {"CLOCK_OUT"}
    ],
  });
$.ajax({
  url: "api/timemanageprocess.php",
  method: "post",
  dataType: "json",
  success: function(response){
    console.log( JSON.stringify(response) );
  },
  error: function(request, status, errorThrown){
    console.log(errorThrown);
  }
});
$('#example').DataTable({
   "ajax": "url", 
   "columns" : [
    {"data": "keyname"},
     {"data": "keyname"},
    ]
}) 
   $('#example').DataTable({
   ajax: "url", 
   columns : [
     {"data": "keyname"},
     {"data": "keyname"},
    ]
})