如何在第一个循环$.each(data, function (i, dataitem) {}
中创建一个表并在其中插入第二个循环($.each(dataitem, function (i, item) {}
)。
if ($.trim(data)) {
$.each(data, function (i, dataitem) {
$.each(dataitem, function (i, item) {
var $tr = $('<tr>').prepend(
$('<td>').text(item.productstore.products.name),
$('<td>').text(item.quantity);
).prependTo('#output');
});
});
}
HTML:
<div id="output"></div>
现在它仅输出:
<div id="output">
<tr><td>product</td><td>qty</td></tr>
<tr><td>product2</td><td>qty2</td></tr>
</div>
我不知道如何将其包装在<table></table>
答案 0 :(得分:0)
您可以使用jQuery构造函数动态构建DOM元素。就像您在使用$('')一样。只需对表执行相同操作即可。请尝试以下。
Cast
答案 1 :(得分:0)
//prepend all the tables after they have been created so there is a single
//change to the DOM
$('#output').prepend($.map(data, function(dataitem, i) {
//return a table with all the rows appended to it
return $('<table>').append($.map(dataitem, function(item, i) {
//return a row with both the cells appended to it
return $('<tr>').prepend(
$('<td>').text(item.productstore.products.name),
$('<td>').text(item.quantity);
);
}));
}));