【问题标题】:Populate table with array with multiple index [duplicate]用具有多个索引的数组填充表[重复]
【发布时间】:2021-04-16 04:32:54
【问题描述】:

在 ajax cal 之后,我可以打印以下结果:

Array(3)
0: [{Col1: "Value", Col2: "Value" }]
1: [{Col1: "Value", Col2: "Value" }]
2: [{Col1: "Value", Col2: "Value" }]

我要做的是用 for 循环填充表格。这是我正在尝试使用的。

$.ajax({
    url: "apiurl",
    data: {},
    method: "GET",
    success: function (data) {
        var json = data;
        var html = "";

        for (var x = 0; x < json.length; x++) {
            html += "<tr><td>" + json[x].Col1+ "</td><td>" + json[x].Col2+ "</td></tr>";
        }

        $('#Table').html("");
        $('#Table').html(html);         
    }
});

此代码不会填充表格,但如果我进行此更改:

var json = data[0];

该表是用索引为 0 的数组中的值填充的,所以我的问题是,我该怎么做才能用所有索引的值填充我的表。

【问题讨论】:

  • data 在每个索引处都有一个数组。使用json[x][0].Col1 而不是json[x].Col1 或者,使用var json = data.flat() 并保留现有循环

标签: javascript jquery arrays


【解决方案1】:

您的data 似乎是一个数组数组。您需要将其展平:

var json = data.map((entry) => entry[0]);

您也可以使用.flat() 方法:

var json = data.flat();

【讨论】:

    猜你喜欢
    • 2017-12-16
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 2018-07-31
    • 2018-05-07
    • 2018-01-22
    • 1970-01-01
    • 2012-03-06
    相关资源
    最近更新 更多