![](/img/trans.png)
[英]applying background to first, and every third row in a dynamically generated table
[英]Firefox won't display first row in a dynamically generated JSON table
使用下面的jQuery代码,我试图使用JSON对象来创建一个填充了所有JSON数据的新表。 以下代码在除Firefox之外的所有浏览器中均能完美运行。 在Firefox中,代码确实创建了表,但是始终跳过第一行。 (所有其余行均以FF完美显示。)更准确地说,在“每个”方法的第一次迭代过程中,代码确实为第一行创建了标签以及该标签的id属性。 但是,内部HTML(元素和文本)都不会附加到元素。 我不明白为什么代码可以在所有浏览器(包括IE8)中运行,但不能在FF中运行。 谁能提供一些建议?
$('#mydiv').append('<table><thead><th>Activity</th><th>Category</th><th>Deadline</th><th>Status</th></thead><tbody>')
$(json).each(function(i) {
$('#mydiv tbody')
.append("<tr id='" + json[i].id + "'></tr>")
.children("'#" + json[i].id + "'")
.append("<td class='activity'>" + json[i].activity + "</td>")
.append("<td class='category'>" + json[i].category + "</td>")
.append("<td class='deadline'>" + json[i].deadline + "</td>")
.append("<td class='status'>" + json[i].status + "</td>")
})
$('#mydiv').append('</tbody></table>')
试试这个(不确定它是否可以工作。)
$('#mydiv').append('<table><thead><th>Activity</th><th>Category</th><th>Deadline</th><th>Status</th></thead><tbody></tbody></table>')
$(json).each(function(i) {
$('#mydiv tbody')
.append(
$("<tr />").attr("id", json[i].id)
.append("<td class='activity'>" + json[i].activity + "</td>")
.append("<td class='category'>" + json[i].category + "</td>")
.append("<td class='deadline'>" + json[i].deadline + "</td>")
.append("<td class='status'>" + json[i].status + "</td>")
)
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.