datatables不加载json(带对象的数组)

时间:2016-01-15 23:21:40

标签: javascript php jquery datatables

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

[{"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

问题出在哪里?

2 个答案:

答案 0 :(得分:1)

您需要使用下面显示的dataSrc: '' ash来匹配您的JSON数据格式,有关详细信息,请参阅dataSrc。使用以下初始化选项:

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

答案 1 :(得分:0)

通常,这样的错误源于返回的数据。如果您使用的是西班牙语语言数据,则可能是编码不匹配(UTF-8与ASCII等),并且重音会导致您遇到麻烦。

您可以发布从$functions -> get_prop_table_test();

返回的数据样本