使用$(this)在2个元素之后添加一些东西?

时间:2015-04-21 16:11:56

标签: javascript jquery insertafter

我想在$(this)的第2或第3个元素之后添加一些内容。这实际上总是一种形式,只是为了让你知道。在此表单之后还有一些其他元素,最后还有另一种形式,您可以返回。

在此表单之后我想添加一条消息,如果已创建评论,但我该怎么做:

$(this).after.after("<p class='success'>The comment has been edited!</p>");

或类似的地方我也可以使用表单所具有的类的名称?实际上,返回的表格有更名。

我实际上需要使用$(this),因为除了为每条评论添加了消息。

2 个答案:

答案 0 :(得分:5)

要定位下一个元素,如果它是表单,请使用.next('form')

$(this).next('form').after("<p class='success'>The comment has been edited!</p>");

要在两个或三个元素之后定位某些内容,您可以使用当前索引并添加到​​它,然后使用eq来获取该兄弟

$(this).siblings().eq($(this).index() + 2)

答案 1 :(得分:1)

要在下一个最近的表单后插入,请使用.nextAll('form')[0]

$("<p class='success'>The comment has been edited!</p>")
.insertAfter($(this).nextAll('form')[0]);

这将在第一次出现表单后插入HTML($(this)之后)