" += "" += " " += "" += "
gpt4 book ai didi

JavaScript 和 DOM : Why "" += "" += "
转载 作者:塔克拉玛干 更新时间:2023-11-02 22:00:36 25 4
gpt4 key购买 nike

在这两者中,字符串内容是相同的。如果你这样做:

 myDiv.innerHTML += "<table><tr><td>A</td><td>B</td></tr></table>";

您得到一个包含两列的表格。

如果你这样做:

 myDiv.innerHTML += "<table>";
myDiv.innerHTML += "<tr>";
myDiv.innerHTML += "<td>A</td>";
myDiv.innerHTML += "<td>B</td>";
myDiv.innerHTML += "</tr>";
myDiv.innerHTML += "</table>";

你只会得到 <table></table>标签。不存在其他标记。

这是因为 JavaScript 将内容的含义更改为对象,所以我们没有将 TD 添加到 Table 对象中吗?为什么会这样?

最佳答案

每次编辑 innerHTML 后,浏览器都会尝试生成一组完整的 HTML DOM 对象。

所以在第一步之后你有:

<table></table>

由于结束标签是通过错误恢复添加的。

然后你尝试

<table></table><tr>

并且由于您不能在表外有表行,因此错误恢复会将其丢弃。

……等等。

关于JavaScript 和 DOM : Why "<table>" += "<tr><td></td></tr>" += "</table" doesn't work?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3916205/

25 4 0