附加克隆的 div,删除一类 div



我想做什么:

当单击类 .plus 的任何按钮时,克隆div #plusclone删除带有 .plus 类的按钮并将其附加到div #eingabemsearch。

我的代码所做的是只克隆 .plus 并附加它。所以几乎相反。

 $(".plus").click(function(){
    var cloned = $('#plusclone').clone().find('.plus').remove();
    $("#eingabemsearch").append(cloned);
 });

这可能真的很愚蠢,但我尝试了很多不同的东西,但无法让它工作。

您的问题是由于返回.plus元素而不是您克隆的父元素find()造成的。要解决此问题,您只需稍微重新排列逻辑以保留对原始克隆的引用。另请注意,您需要从克隆中删除id以避免重复。试试这个:

$(".plus").click(function(){
  var $clone = $('#plusclone').clone().removeAttr('id');
  $clone.find('.plus').remove();
  $clone.appendTo("#eingabemsearch");
});

您正在使用 find() 方法,以便引用保留在该元素(已删除的.plus元素(上,以返回到以前的引用使用 end() 方法。id 属性应该是唯一的,因此请使用removeAttr()方法将其删除,或使用attr()方法使用唯一 ID 进行更新。

 $(".plus").click(function(){
    var cloned = $('#plusclone').clone().removeAttr('id').find('.plus').remove().end();
    $("#eingabemsearch").append(cloned);
 });

或者将克隆元素的引用存储在变量中,其余部分在缓存对象上执行

 $(".plus").click(function(){
    var cloned = $('#plusclone').clone().removeAttr('id');
    cloned.find('.plus').remove();
    $("#eingabemsearch").append(cloned);
 });

最新更新