Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用js为每个数组添加新列_Javascript_Html - Fatal编程技术网

Javascript 如何使用js为每个数组添加新列

Javascript 如何使用js为每个数组添加新列,javascript,html,Javascript,Html,我想在表列布局中显示多个响应值 从输入中我得到第一个响应,其中包含许多子项,然后对所有子项发出请求。 注意:我不知道子项的数量,也不知道子项响应的长度 迄今为止的代码: function getallhistory(data) { //cutting the return array by 2 var asd = vagdalo(data, 2) var table = document.getElementById('outpout'); var tr = table.tHead; var t

我想在表列布局中显示多个响应值
从输入中我得到第一个响应,其中包含许多子项,然后对所有子项发出请求。
注意:我不知道子项的数量,也不知道子项响应的长度

迄今为止的代码:

function getallhistory(data) {
//cutting the return array by 2
var asd = vagdalo(data, 2)
var table = document.getElementById('outpout');
var tr = table.tHead;
var tb = table.getElementsByTagName('tbody')[0];
while (tr.hasChildNodes()) {
    tr.removeChild(tr.lastChild);
}
var thr = document.createElement("tr");
for (var i = 0; i < asd.length; i++) {
    console.log(asd[i][0]);
    var th = document.createElement("th");
    th.innerHTML = "" + asd[i][0] + " ";
    thr.appendChild(th);
}
tr.appendChild(thr);
$.each(asd, function (key, value) {
    var row, cell, text, r, c;
    $.ajax(
        {
            url: "/Home/TrGSNHD/",
            type: "POST",
            dataType: 'json',
            contentType: 'application/json',
            data: JSON.stringify({ SNR: value[0], SNRP: value[1] }),
            success: function (got) {
                console.log(got);
                for (r = 0; r < got.result.bookingValues.length; r++) {
                    row = document.createElement('tr');
                    for (c = 0; c < asd.length; c++) {
                        cell = document.createElement('td');
                        text = document.createTextNode(got.result.bookingValues[r]);
                        cell.appendChild(text);
                        row.appendChild(cell);
                    };
                    tb.appendChild(row);
                }

            },
            error: function (xhr, status, p3, p4) {
                var err = "Error " + " " + status + " " + p3;
                if (xhr.responseText && xhr.responseText[0] == "{")
                    err = JSON.parse(xhr.responseText).message;
                console.log(err);
            }
        });
});
}
函数getallhistory(数据){ //将返回数组减少2 var asd=vagdalo(数据,2) var table=document.getElementById('output'); var tr=表.tHead; var tb=table.getElementsByTagName('tbody')[0]; while(tr.hasChildNodes()){ tr.removeChild(tr.lastChild); } var thr=document.createElement(“tr”); 对于(变量i=0;i 我只得到列中的最后一个响应

我还试图创建一个多维数组,推送响应,但无法让它等待所有请求的结束

我想要的是:


请求1
请求2
请求3
请求4
请求5
响应1数据1
响应2数据1
响应3数据1
响应4数据1
响应5数据1
响应1数据2
响应2数据2
响应3数据2
响应4数据2
响应5数据2
....
....
...
...
....

不要在循环内部追加行,而是尝试将
保存在数组中(类似于
res[key]=row;
),然后在
$之后(外部)。每个
循环尝试将整个内容追加到table@Jayakrishnan我写道,我已经尝试过这个选项,因为它推动了多维数组。