删除div并在同一位置添加新div

时间:2018-03-06 14:42:57

标签: jquery html

这是HTML代码:

<div class="like-post old" data-postid="242">Like Post</div>

我想要一个jquery代码来删除具有类post-post的div,并将新内容追加到已删除div的位置。

让我们说新内容是:

<div class="like-post new" data-postid"232">Like Post</div>

如果我使用.html()方法之类的方法,最终的代码将是:

<div class="like-post" data-postid"232">
    <div class="like-post new" data-postid"232">Like Post</div>
</div>

我需要的最终代码是:

<div class="like-post new" data-postid"232">
   Like Post
</div>

3 个答案:

答案 0 :(得分:1)

您可以使用jQuery的.replaceWith()函数。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="like-post old" data-postid="242">I'll be replaced... :(</div>
{{1}}

答案 1 :(得分:0)

不是删除整个div而是在同一个地方放置一个新div(尽管可以使用.replaceWith完成),我建议更好的方法来改变属性的值,如{ {1}}并根据需要更改class, data-postid

请参阅以下代码:

HTML
$(".like-post")
  .toggleClass("old new")
  .attr("data-postid", "232")

答案 2 :(得分:0)

简单地改变<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="like-post old" data-postid="242">Like Post</div> div以反映新div需要具备的内容是否可以接受?例如:

old

这将选择课程$('.like-post:not(.new)').addClass('new'); 中没有课程div的所有like-post,并添加课程new

然后你不必担心删除任何东西,或在正确的位置添加任何东西。