【发布时间】:2014-05-28 22:01:54
【问题描述】:
我需要使用 jQuery 或 JavaScript 从 DOM 中删除单个标签。我只需要删除封闭标签,而不是标签内的内容。
remove()、detach()、empty() 方法无法应用,因为它们也会删除整个内容。
例如:
<table border="1" style="width:300px">
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
</table>
只需要删除<table></table>。
目前的 DOM 是这样的
<table style="width:600px">
<tbody><p> Number - Name - <br></p>
<p> 111 - ABC - <br></p>
<p> 222 - KLM - <br></p>
<p> 333 - NOP - <br></p>
<p> 444 - HIJ - <br></p>
</tbody></table>
提前谢谢你。
【问题讨论】:
-
如果您删除了表格元素并将表格行元素留在后面,则文档将无效。你为什么想要那个?
-
我同意@Quentin。你不应该这样做,但对于这个特定的例子,你可以做类似
var table = document.querySelector("table"); table.outerHTML = table.innerHTML; -
所有这些表格数据都不需要在段落中表示。现在我把段落放在笼子里。我想删除它。为此,我还需要删除 table 标签。
全部在 DOM 中删除。 HTML 现在是什么样子的,您希望它是什么样子?@user3547920 如果您指望<tr>和<td>也被删除,那么使用 .text() 方法提取文本然后在段落中替换如何?这是本意吗?如果你包含了你想要的结果 DOM 将会很有用。
标签: javascript jquery html dom