使用JavaScript填充HTML表格

17
我想使用 JavaScript 填充预定义的 HTML 表格:
<table>
    <tr>
        <th scope="col">ID</th>
        <th scope="col">Name</th>
    </tr>
    <div id='data'/>
</table>

使用

document.getElementById('data').innerHTML = ....

但是由于在 <table> 中不允许使用 <div>,所以上述代码无法正常工作。那么正确的实现方式应该是什么呢?


3
抱歉,我不能想象这是您要寻找的答案,但是......不要在<table/>内放置<div />? - Domenic
我猜你想引用表格中的单个单元格,而不是到处放置'divs'。这在SE上已经被问过了:https://dev59.com/sHA75IYBdhLWcg3w3NBe 第一个答案应该对你有所帮助。 - ʍǝɥʇɐɯ
3个回答

31

你可以使用tr和td来代替Div。

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html>
<head>
<script type="text/javascript">
function addRow(content,morecontent)
{
         if (!document.getElementsByTagName) return;
         tabBody=document.getElementsByTagName("tbody").item(0);
         row=document.createElement("tr");
         cell1 = document.createElement("td");
         cell2 = document.createElement("td");
         textnode1=document.createTextNode(content);
         textnode2=document.createTextNode(morecontent);
         cell1.appendChild(textnode1);
         cell2.appendChild(textnode2);
         row.appendChild(cell1);
         row.appendChild(cell2);
         tabBody.appendChild(row);


}
</script>
</head>
<body>
<table border='1' id='mytable'>
<tbody>
<tr><td>22</td><td>333</td></tr>
<tr><td>22</td><td>333</td></tr>
</tbody>
</table>
<button onClick='addRow("123","456");return false;'>
Add Row</button>
</body>
</html>

1

从最基本的角度来看:

<table>
 <tr>
  <th>ID</th>
  <th>Name</th>
 </tr>
 <tr>
  <td colspan="2">
   <div> LOTS O' CONTENT </div>
  </td>
 </tr>
</table>

0
你已经回答了自己 - 把 div 放在正确的位置 - 要么在表格内部,要么在外部。JavaScript 将会起作用,但是 div 是否会显示在你想要的位置,这是一个不同的问题 :)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接