【发布时间】:2011-06-14 23:10:15
【问题描述】:
我有一张如下表:
<table>
<tr>
<td>col 1</td><td>col2</td>
</tr>
<tr id="insert">
<td>field</td><td>Field 2</td>
</tr>
<tr>
<td>another field</td><td>one more field</td>
</tr>
</table>
现在的问题是我需要在中间行之后动态插入新行(id = insert)。我有一个自定义的 javascript 函数,可以通过对下一个元素使用 insertBefore 调用来插入元素。
使用以下 javascript 成功创建新行:
var new_row = document.createElement('tr');
new_row.innerHTML="<td>test</td>";
insertAfter(document.getElementById("insert"), new_row);
但是,新行拒绝接受任何使用 innerHTML 的简单 html 格式。新行的最终输出类似于:
<tr>test</tr>
你看它不想输出我指定的。实际的脚本要复杂得多,因此不幸的是,使用 appendChild 或类似函数手动添加每个脚本会非常耗时,而且可能相当耗费资源。无论如何我可以在这个表格行中添加一个“html块”并在这个块中定义表格列吗?
我很困惑,非常感谢任何帮助。
【问题讨论】:
标签: javascript html dom dynamic