You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript循环创建<tr>异常:如何正确生成表格行?

问题原因与修复方案

问题原因

每次通过 innerHTML += 分步拼接HTML时,浏览器会立刻尝试将这段不完整的代码解析为合法DOM结构。当你只添加 <tr> 而未闭合时,浏览器会自动补全 </tr>,导致后续的 <td> 被错误插入,最后再添加的 </tr> 无法对应到目标行,最终造成表格结构混乱。

最简修复方法

先在变量中构建完整的表格HTML字符串,最后一次性赋值给 innerHTML。这样浏览器会解析完整、结构正确的HTML,避免自动补全标签的问题,同时也能提升性能(减少DOM重绘次数)。

修改后的JS代码

function populateTable(){
    const letters = ["a", "b", "c", "d", "e"];
    const numbers = ["1", "2", "3", "4", "5"];
    let tableHtml = "";

    for(let i = 0; i < numbers.length; i++){
        tableHtml += "<tr>";
        for(let j = 0; j < letters.length; j++){
            tableHtml += "<td>" + letters[j] + numbers[i] + "</td>";
        }
        tableHtml += "</tr>";
    }

    document.getElementById("the-table").innerHTML = tableHtml;
}

内容的提问来源于stack exchange,提问作者Mofro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 21:10:33