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

如何正确构建DataTables所需的jQuery数组?求技术协助

DataTables仅显示一行数据的数组填充问题修正

错误原因分析

你的代码存在两个关键问题:

  • DataTables数据格式错误:你将tblData包裹在额外的数组[tblData]中,导致传入的是一个三维数组,而DataTables要求data参数为二维数组(每个子数组对应表格的一行)。
  • 冗余与不规范变量:循环内的var test = [];完全无用;object未用let/const声明,会成为全局变量,存在隐患。

修正后的代码

// 确保在循环外初始化tblData数组
let tblData = [];

for (let i = 0; i < results.length; i++) {
    const object = results[i];
    console.log("className " + object.attributes.block_hash);
    // 替换为你的实际业务字段,这里用示例值演示
    tblData.push(["Tiger Nixon", "System Architect", "Edinburgh", "5421", "2011/04/25", "$320,800"]);
}

$(".javascript-sourced").DataTable({
    data: tblData, // 直接传入二维数组,无需额外包裹
    columns: [{
        title: "姓名"
    }, {
        title: "职位"
    }, {
        title: "办公地点"
    }, {
        title: "分机号"
    }, {
        title: "入职日期"
    }, {
        title: "薪资"
    }]
})

对比官方示例说明

官方示例中data参数直接传入二维数组(每行对应一个子数组),而你的错误操作让DataTables把整个tblData数组识别为单一行数据,因此仅显示一行。修正后data参数格式与官方示例一致,即可正常渲染多行数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 23:06:27