var menuStarters = [["chicken", "5.00"], ["salad", "4.11"], ["soup", "3.88"]];
document.getElementById("menu").innerHTML += '<table>';
for (var i = 0; i < menuStarters.length; i++)
{
document.getElementById("menu").innerHTML += '<tr><td>' + menuStarters[i][0] + '</td><td>' + menuStarters[i][1] + '</td></tr>';
}
document.getElementById("menu").innerHTML += '</table>';
我确定我可能遗漏了一些明显的东西。
最佳答案
文档中不能有部分标签。添加开口 <table>
到 innerHTML
将导致插入一个完整的(闭合的)标签。随后的添加在表格之外,其中 tr
和 td
是非法的。
首先构建字符串,然后将其添加到容器中:
var menuStarters = [
["chicken", "5.00"],
["salad", "4.11"],
["soup", "3.88"]
];
var thtml = '<table>';
for (var i = 0; i < menuStarters.length; i++) {
thtml += '<tr><td>' + menuStarters[i][0] + '</td><td>' + menuStarters[i][1] + '</td></tr>';
}
thtml += '</table>';
document.getElementById("menu").innerHTML += thtml
<div id="menu"></div>
关于javascript - 将 table、tr、td 标签附加到 innerHTML 不会创建表格行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33837265/