Jquery Remove不会完全删除该元素

时间:2014-01-16 17:17:04

标签: javascript jquery html css

基于Jquery文档.remove将删除父标记内的元素和嵌套的html元素。

使用Jquery示例

<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
</div>

$( ".hello" ).remove();

将给出

<div class="container">
<div class="goodbye">Goodbye</div>
</div>

但是,我可能会错误地执行此操作,但我需要使用jquery来移动元素。

如果我执行以下操作:

<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
<textarea></textarea>
</div>
<div class="test"></div>

var container = $(".container")[0].outerHTML;
$(".container").remove();
$(".test").append(container);

这将生成包含父元素的容器的副本,删除html元素,然后将.test附加到数据中。如果我然后尝试在textarea之后添加一个元素,如下所示:

$("textarea").after("<p>abc123</p>");

不是将段落应用于左侧的textarea,而是将其应用于原始textarea应该的位置以及新textarea。

有谁知道这是由于我这样做的方式还是有办法解决?

提前感谢您的时间。

1 个答案:

答案 0 :(得分:3)

append()移动元素,您根本不必remove()

$(".test").append($(".container"));