【问题标题】:DataTables warning: table id=datatable - Requested unknown parameter '0' for row 0, column 0DataTables 警告:表 id=datatable - 请求第 0 行第 0 列的未知参数“0”
【发布时间】:2019-01-25 02:55:06
【问题描述】:

我试图用 ajax 响应初始化数据表。 但是我收到了这样的错误消息。

DataTables 警告:table id=datatable - 为第 0 行第 0 列请求未知参数“0”。有关此错误的详细信息,请参阅http://datatables.net/tn/4

这是我的数据表初始化。

table = $('#datatable').DataTable({
    "ajax": {
        type: 'POST',
        url: 'bridgeHandler.php',
        data: {action: 'getAllCategories'},
        'columns': [
            {"data": "name"},
            {"data": "description"},
            {"data": null,
                "render": function (data, type, row) {
                    return "";
                }
            },
        ]
    },
    "initComplete": function (settings, json) {
        // Apply the search
        table.columns().every(function () {
            var that = this;
            $('#datatable', this.footer()).on('keyup change', function () {
                if (that.search() !== this.value) {
                    that
                            .search(this.value)
                            .draw();
                }
            });
        });
    },
    destroy: true,
    ordering: false
});

这是我的 JSON 响应

{"data":[{"id":"3","name":"fgdgfdfg","description":"gfgdfgfdg"}]}

这是错误信息:

【问题讨论】:

  • 请求的 PHP 文件上是否有 content-type header?如果没有...你得到的 JSON 可能是一个字符串。
  • 是的,我在 PHP 响应中添加了内容类型标头
  • 正确关闭 ajax 部分,您在 ajax 中包含列 ...
  • 找到解决方案了吗?

标签: jquery ajax html datatable


【解决方案1】:

在某些情况下,来自 Ajax 的响应与列大小不匹配。这就是问题所在。

【讨论】:

    【解决方案2】:

    columns 字段移出ajax

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-30
      • 2016-09-24
      • 1970-01-01
      • 2021-06-08
      • 2014-09-07
      • 1970-01-01
      相关资源
      最近更新 更多