我有需要在表中显示的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>");
});
});
答案 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);
});
基本上只为每个外部迭代创建一行。
答案 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>");
})