Javascript 无法通过ajax在服务器的DataTable中显示数据

Javascript 无法通过ajax在服务器的DataTable中显示数据,javascript,python,ajax,flask,datatables,Javascript,Python,Ajax,Flask,Datatables,我想通过服务器上的ajax在DataTable中显示数据。以下是我所拥有的: # server # .... return jsonify({"data": {1: (123, "something1", 333), 2: (456, "something2", 555)}}) 和一个模板: <script> $("#my_table").DataTable({ ajax: "/my_url.json", processing: true,

我想通过服务器上的ajax在DataTable中显示数据。以下是我所拥有的:

 # server
  # ....
  return jsonify({"data": {1: (123, "something1", 333), 2: (456, "something2", 555)}})
和一个模板:

<script>
    $("#my_table").DataTable({
      ajax: "/my_url.json",
      processing: true,
      serverSide: true,
      columns: [
        {data: "id" },
        {data: "column2"},
        {data: "column3"}
      ] 
    });
  </script>

$(“#我的#表”).DataTable({
ajax:“/my_url.json”,
处理:对,
服务器端:是的,
栏目:[
{数据:“id”},
{数据:“第2列”},
{数据:“第3列”}
] 
});
和一张桌子:

<table id="my_table">
  <thead>
   ......

......
由于某种原因,什么也没有发生。完全两者都不是对服务器的ajax请求。也没有错误。js和css文件已包含在模板中

当我在浏览器中转到“/my_url.json”时,它返回json


如何修复它?

您需要稍微调整服务器端脚本,因为DataTables希望数据采用以下形式:

{
    "data": [
        {
            "id": 123, 
            "column2": "something1", 
            "column3": 333
        },{
            "id": 456, 
            "column2": "something2", 
            "column3": 555
        }
    ]
}
我很确定您的数据不会是那种格式,尽管在记录
数据的需求方面做得很好


我不熟悉Python,所以我不确定您将如何修改服务器端脚本,抱歉。您可以在DataTables中处理它,但最好是在服务器端处理,希望这会有所帮助。

实际上,“数据”并不是完全必要的。您可以使用optionI know指定包含数据的键是什么,但在我编写响应时,添加了
数据
,这是必需的,除非您希望添加
dataSrc
,从而将
ajax
更改为对象,而不仅仅是URI。但我应该提一下,你是对的。