数据表不加载 JSON(带对象的数组)

datatables does not load json (array with objects)

本文关键字:对象 数组 加载 JSON 数据表      更新时间:2023-09-26

我正在尝试使用来自 ajax 的 sorced 数据设置可操作。该文件输出一个包含对象的数组:

[{"column":"content","column":"content"}]

但它不是在加载数据,而是在不断处理。

$('#example').DataTable( {
    processing: true,
    lengthChange: false,
    ajax: '/get?op=2',
    language: {
        "url": "//website.com/js/DataTables-Spanish.json"
    },
    columns: [
        { data: 'id' },
        { data: 'columns' }
        // more columns
    ],
    select: true
});

这是文件的代码:

if ($op === 2) {
    $result = $functions->get_prop_table_test();
    header('Content-type: text/json');
    header('Content-type: application/json');
    echo json_encode($result);
}

我看到的唯一错误是在控制台中:

TypeError: f is undefined    datatables.min.js:60:375
ia/<()                       datatables.min.js:60
ra/i()                       datatables.min.js:47
ra/o.success()               datatables.min.js:47
n.Callbacks/j()              jquery.min.js:8
n.Callbacks/k.fireWith()     jquery.min.js:8
x()                          jquery.min.js:10
.send/b/<()                  jquery.min.js:10

https://cdn.datatables.net/s/zf/dt-1.10.10,b-1.1.0,se-1.1.0/datatables.min.js

问题出在哪里?

您需要

使用如下所示的dataSrc: ''来匹配您的 JSON 数据格式,有关更多信息,请参阅dataSrc。使用以下初始化选项:

ajax: {
   url: '/get?op=2',
   dataSrc: ''
}

通常,此类错误源自返回的数据。如果您使用的是西班牙语数据,则可能是编码不匹配(UTF-8 与 ASCII 等),并且重音给您带来了麻烦。

您能否发布从$functions -> get_prop_table_test();返回的数据样本