jQuery,$ .each如何防止表进入下一行?

时间:2015-12-01 10:30:13

标签: javascript jquery html

我有需要在表中显示的json数据,我有两个$ .each循环来创建表。但是,jquery为内部$ .each循环创建了一个新行。如何防止外部$ .each附加新行?我为它创建了一个JSfiddle。

$.each(data,function(row,val){
    $('#responsetable tbody:last').append("<tr></tr><td>" +val.anno+ "</td><td>"+ val.descrizione.descrizione + "</td>" );

    $.each(val.dir_empty,function(key,value){

        $('#responsetable tbody').append("<td>"+value+"</td>");


    });
});

jsfiffle tabular data

3 个答案:

答案 0 :(得分:0)

你是否希望内部的每个tds都在每个外部的'内部'?因为现在你将它们添加到没有行的主体。

我不确定你到底想做什么,但也许这样做呢?

$.each(data,function(row,val){
    $('#responsetable tbody:last').append("<tr><td>" +val.anno+ "</td><td>"+ val.descrizione.descrizione + "</td></tr>" );

    $.each(val.dir_empty,function(key,value){

        $('#responsetable tbody tr:last').append("<td>"+value+"</td>");


    });
});

答案 1 :(得分:0)

我已将您的每种方法更新为以下内容:

$.each(data,function(row,val) {
    var toAppend = "<tr><td>" +val.anno+ "</td><td>"+ val.descrizione.descrizione + "</td>";

    $.each(val.dir_empty,function(key,value){
        toAppend += "<td>"+value+"</td>";
    });

    toAppend += "</tr>";

    $('#responsetable tbody').append(toAppend);
});

基本上只为每个外部迭代创建一行。

JSFiddle

答案 2 :(得分:0)

试试这个..

$.each(data,function(row,val){
    $('#responsetable tbody').append("<tr>");
    $('#responsetable tbody').append("<td>" +val.anno+ "</td><td>"+ val.descrizione.descrizione + "</td>" );
    $.each(val.dir_empty,function(key,value){
        $('#responsetable tbody').append("<td>"+value+"</td>");
    });
    $('#responsetable tbody').append("</tr>");
})