Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么浏览器不希望将文本放置在<;tr>;标签?_Javascript_Html_Browser - Fatal编程技术网

Javascript 为什么浏览器不希望将文本放置在<;tr>;标签?

Javascript 为什么浏览器不希望将文本放置在<;tr>;标签?,javascript,html,browser,Javascript,Html,Browser,我想把带有javascript的表行放到HTML中。 为什么trRight不在tr标签之间 我也在其他浏览器中进行了测试,这也是同样的问题 <!doctype html> <html lang="en"> <body> <table> <tbody> <!--Javascript puts code here--> </tbody&

我想把带有javascript的表行放到HTML中。 为什么trRight不在tr标签之间

我也在其他浏览器中进行了测试,这也是同样的问题

<!doctype html>
  <html lang="en">
    <body>
      <table>
        <tbody>
                <!--Javascript puts code here-->
        </tbody>
      </table>
    </body>
    <script>
     document.querySelector("tbody").innerHTML += "<tr>trRight</tr>";
     document.querySelector("tbody").innerHTML += "<trWrong>trWrong</trWrong>";
    </script>
  </html>

document.querySelector(“tbody”).innerHTML+=“trRight”;
document.querySelector(“tbody”).innerHTML+=“trError”;
结果:

是一个表行,它不是要放置在
中,您只能将内容放置在
中,如下所示:

document.querySelector("tbody").innerHTML += "<tr><td>trRight</td></tr>";
document.querySelector(“tbody”).innerHTML+=“trRight”;
虽然
不是一个有效的标记,但浏览器仍将其视为一个有效的标记,因此会将文本包含在内

[感谢为
标记提供有效链接]

是一个表行,它不是要放置在
中,您只能将内容放置在
中,如下所示:

document.querySelector("tbody").innerHTML += "<tr><td>trRight</td></tr>";
document.querySelector(“tbody”).innerHTML+=“trRight”;
虽然
不是一个有效的标记,但浏览器仍将其视为一个有效的标记,因此会将文本包含在内


[感谢为
标记提供有效链接]

标记不允许包含
元素以外的任何内容,请参阅规范:您可以将文本包装在这些元素中。
标记不允许包含
元素以外的任何内容,请参阅规范:您可以将文本包装到这两个元素中的任何一个。tr没有作为子元素的文本节点。因为除了TD或TH等其他表元素外,您永远无法向tr添加任何内容。tr没有作为子元素的文本节点。因为除了TD或TH等其他表元素外,您永远无法向tr添加任何内容。