Javascript 使用JS生成不正确的HTML表

Javascript 使用JS生成不正确的HTML表,javascript,html,Javascript,Html,你好 为什么,由于这段代码,表中的所有单元格都在一列中对齐,而不是形成一个正常的表? 对不起,我的英语不好,也许是个愚蠢的问题,我几天前开始学习JS 函数启动(){ var size=document.getElementById('test5')。值; document.getElementById('start').style.display='none'; 对于(变量y=0;y

你好

为什么,由于这段代码,表中的所有单元格都在一列中对齐,而不是形成一个正常的表? 对不起,我的英语不好,也许是个愚蠢的问题,我几天前开始学习JS
函数启动(){
var size=document.getElementById('test5')。值;
document.getElementById('start').style.display='none';
对于(变量y=0;y


开始
您将
放在id为cont的元素中。您需要将它们放在
中。以下是一个可行的解决方案:

函数启动(){
var size=document.getElementById('test5')。值;
let table=document.getElementById(“cont”);
document.getElementById('start').style.display='none';
对于(变量y=0;y


开始
您将
放在id为cont的元素中。您需要将它们放在
中。以下是一个可行的解决方案:

函数启动(){
var size=document.getElementById('test5')。值;
let table=document.getElementById(“cont”);
document.getElementById('start').style.display='none';
对于(变量y=0;y


开始
问题在于,在循环中,您将一个不完整的HTML字符串分配给
innerHTML
。每次作业完成后,浏览器都会尽力修复不完整的HTML

考虑一下第一次执行此操作时会发生什么(为简洁起见,我们假设
document.getElementById(“cont”)
已分配给名为
table
的变量):

由于
table.innerHTML
已经是
,因此您尝试将其设置为的新值是
test
。这是无效的HTML-a
必须有一个
父项,因此浏览器通过将其包装在
中来为您修复它。如果现在执行了
console.log(table.innerHTML)

<tr></tr>
<tr><td>test</td></tr>

开始

问题在于,在循环中,您将一个不完整的HTML字符串分配给
innerHTML
。每次作业完成后,浏览器都会尽力修复不完整的HTML

考虑一下第一次执行此操作时会发生什么(为简洁起见,我们假设
document.getElementById(“cont”)
已分配给名为
table
的变量):

由于
table.innerHTML
已经是
,因此您尝试将其设置为的新值是
test
。这是无效的HTML-a
必须有一个
父项,因此浏览器通过将其包装在
中来为您修复它。如果现在执行了
console.log(table.innerHTML)

<tr></tr>
<tr><td>test</td></tr>

开始

使用innerHTML构建HTML与构建字符串不同。使用innerHTML构建HTML与构建字符串不同。
<tr></tr>
<tr><td>test</td></tr>