根据 table jquery 中的数据填充多维数组

populate multidimensional array based on data in table jquery

 var $rows = $('.personalinfo').find("tr:not(:eq(0))");
        var valueToPush = {};
        $rows.each(function(){//find("td:not(:eq(" + tdIndex + "))");
            var $tds = $(this).find('td');
            var id = $tds.eq(0).text();
            var lastname = $tds.eq(1).text();
            var firstname = $tds.eq(2).text();
            var birthday = $tds.eq(3).text();
            var gender = $tds.eq(4).text();



            valueToPush["id"] = (id);
        });
        console.log(valueToPush);

这就是我在 table 中获取 td 的每个值的方式,它返回正常,然后我将数据放入多维数组中。在这里,我尝试将所有 id 放入数组中,我期望的是

{id:1},{id:2},{id:3}....

但我得到的只是最后的数据,它是这样显示的

Object{id:"1"}

我想从中得到的是这样的

Table[{id:1,firstname:john,lastname:smith,birthday:010989,gender:male},{id:2,firstname:anna,lastname:cole,birthday:020478,gender:female}]

我想要这样,这样我以后就可以在我的 sql 语句中使用它,这样我就可以循环进入它,这样我就可以将所有数据保存在数据库中

而不是

valueToPush["id"] = (id);

使用

valueToPush[id] = (id); OR you can replace id with some unique key   

因为它将 "id" 视为字符串。

valueToPush.push({
id: id,
firstname:firstname,
lastname:lastname,
birthday:birthday,
gender:gender
});
for (var i = 0; i < valueToPush.length; i++) {
    console.log("PAIR " + i + ": " + valueToPush[i].id);
    console.log("PAIR " + i + ": " + valueToPush[i].firstname);
    console.log("PAIR " + i + ": " + valueToPush[i].lastname);
    console.log("PAIR " + i + ": " + valueToPush[i].birthday);
    console.log("PAIR " + i + ": " + valueToPush[i].gender);

}

暂时用这个就可以了。我将检查我是否可以在服务器端获取值。我仍然希望有更多的想法