jQuery:如何追加$(this)

时间:2010-11-22 03:27:49

标签: jquery jquery-selectors append

我有一个jQuery方法,我想将元素$(this)追加到。

我的代码是

$("#actions ul" ).append($(this)); 

然而,这似乎做了什么。使用行

.append($(this).html()) 

确实有效,但它只抓取$(this)(div)的子元素而不是整个元素(li)。

我可能正在做一些蠢货,希望有人可以向我指出这一点。

4 个答案:

答案 0 :(得分:7)

在不确切知道this引用的内容的情况下,我能想到$(this).html()工作而不是$(this)的唯一原因是前一种方法从html代码创建一个新元素而附加$(this)会移动元素。

看看下面是否解决了您的问题:

$("#actions ul" ).append($(this).clone()); 

答案 1 :(得分:0)

$(this)引用的内容并不清楚,但如果它是你想要的元素的子元素,那么$(this).parent()应该得到你所追求的父元素。

答案 2 :(得分:0)

听起来this设置为选择器,可以找到<div>而不是<li>。您可以更改选择器,或者像miket2e建议的那样,使用.parent()代替。注意:您不必使用.html(),因为the .append function可以使用HTML字符串作为jQuery对象。

如果您发布this的值,我们可以提供更具体的答案。

答案 3 :(得分:0)

实际上你想使用appendTo,这将抓住整个元素。

$(this).appendTo("#actions ul");