DataTables无效的JSON响应v2

问题描述 投票:0回答:1

[data coming from database javascript函数

function fetch_data() {
  var dataTable = $('#Acc_data').DataTable({
    "bPaginate": false,
    "info": false,
    "processing": true,
    "serverSide": true,
    "order": [],
    "ajax": {
      url: "fetch_acc.php",
      type: "POST",
      "dataSrc": ""
    }
  });
}

HTML代码

<table class="table" id="Acc_data" style="margin-left:30px;">
  <thead class=" text-primary text-center">
    <tr>
      <th>
        Account#
      </th>
      <th>
        Status
      </th>
      <th>
        Assigned_To
      </th>
      <th></th>
    </tr>
  </thead>
</table>

PHP代码

while($row = mysqli_fetch_array($result))
{
 $sub_array = array();
 $sub_array[] = '<div contenteditable class="update text-center" data-id="'.$row["id"].'" data-column="Account#">' . $row["Accno"] . '</div>';
 $sub_array[] = '<div contenteditable class="update text-center" data-id="'.$row["id"].'" data-column="Status">' . $row["stat"] . '</div>';
 $sub_array[] ='<div contenteditable class="update text-center" data-id="'.$row["id"].'" data-column="Assigned_To">' . $row["email"] . '</div>';
 $sub_array[] = '<button type="button" name="delete" class="btn btn-danger btn-xs delete" id="'.$row["id"].'"><i class="fa fa-trash" aria-hidden="true"></i></button>';
 $data[] = $sub_array;
}   
 $output = array(
     "data"    => $data
    );    
    echo json_encode($output);

这将创建错误“ DataTables警告:表id = Acc_data-无效的JSON响应。有关此错误的更多信息,请参见http://datatables.net/tn/1”。我进行了很多搜索,但没有发现我做错了什么。任何帮助将不胜感激。在此先感谢

javascript php jquery html datatables
1个回答
0
投票

我相信该错误可能是由于您如何构造HTML。 DataTables需要特定的布局才能工作:

<table id="table_id" class="display">
    <thead>
        <tr>
            <th>Column 1</th>
            <th>Column 2</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Row 1 Data 1</td>
            <td>Row 1 Data 2</td>
        </tr>
        <tr>
            <td>Row 2 Data 1</td>
            <td>Row 2 Data 2</td>
        </tr>
    </tbody>
</table>

以上摘自:https://datatables.net/manual/installation#HTML

因此,您拥有的<div>而不是<td>可能会引起问题。

您还可以发布查询返回的数据样本吗?

© www.soinside.com 2019 - 2024. All rights reserved.