You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Datatable标准Ajax加载提示No data available in table问题求助

问题原因
  • 核心错误是Datatable的columns配置参数名写错:columns数组内指定对象字段映射的配置项是data,而非aaData,aaData仅用于声明整体数据源的属性,不能用于列字段映射。
  • 次要问题:第二种Ajax实现没有指定响应数据格式为JSON,可能导致拿到的是字符串类型的响应,无法正确读取aaData属性。
  • 额外排查点:需要确认你的<table>结构中<thead>已经提前定义了和columns数量对应的5个<th>元素,列数不匹配也会触发无数据提示。
修正后的代码
$(document).ready(function(){
    $.ajax({
        type: 'GET',
        url:'table_backend2.php',
        dataType: 'json' // 明确指定响应格式为JSON
    }).done(function(data) {
        var aaData=data['aaData'];
        $("#showTable").DataTable({
            "aaData": aaData,
            "columns": [
                { data: "id"}, // 将原配置的aaData改为data即可
                { data: "show_activity_id" },
                { data: "nasa_id" },
                { data: "game_show_id" },
                { data: "account_id"}
            ]
        });
    });
});
可选优化方案

你可以直接使用Datatable内置的ajax配置,无需手动封装Ajax请求,代码更简洁:

$(document).ready(function(){
    $("#showTable").DataTable({
        processing: true,
        ajax: {
            url: 'table_backend2.php',
            type: 'GET',
            dataSrc: 'aaData' // 指定从响应的aaData字段读取数据
        },
        columns: [
            { data: "id"},
            { data: "show_activity_id" },
            { data: "nasa_id" },
            { data: "game_show_id" },
            { data: "account_id"}
        ]
    });
});

内容的提问来源于stack exchange,提问作者migrent

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 03:57:03