jQuery clone()函数工作不正常

jQuery clone()函数工作不正常,jquery,Jquery,查看我的JSFIDLE 我已经使用jQueryclone()函数克隆了div标记 当有人单击“添加新”时,将添加div标记的新克隆,当有人单击“删除”时,将删除div标记 有一个问题,原来的div标签也包含删除按钮,所以有人点击它的时候,原来的div标签也删除了 我不想在代码执行时显示“删除”链接,当有人单击“添加”时,删除链接将与div标记的克隆一起出现。首先,在“删除”按钮div中将其设为“隐藏”,并在代码中进行以下更改 $(document).ready(function(){ $

查看我的JSFIDLE

我已经使用jQuery
clone()
函数克隆了
div
标记

当有人单击“添加新”时,将添加
div
标记的新克隆,当有人单击“删除”时,将删除
div
标记

有一个问题,原来的div标签也包含删除按钮,所以有人点击它的时候,原来的div标签也删除了


我不想在代码执行时显示“删除”链接,当有人单击“添加”时,删除链接将与div标记的克隆一起出现。

首先,在“删除”按钮div中将其设为“隐藏”,并在代码中进行以下更改

$(document).ready(function(){
    $("#Add").click(function(){
        $("#id").removeAttr("hidden");
        $("#id").show("slow");
        var obj =  $("div.content").eq(0).clone(); //this will clone the html elements
        $("div.row").append(obj); //this will append to the existing elements
    });
});
在身体里

<div class="pull-left"><a href="#" onclick='removeDOM(this)' id="id" hidden>Remove</a></div>

首先,在remove button div中将其设为hidden,并在代码中进行以下更改

$(document).ready(function(){
    $("#Add").click(function(){
        $("#id").removeAttr("hidden");
        $("#id").show("slow");
        var obj =  $("div.content").eq(0).clone(); //this will clone the html elements
        $("div.row").append(obj); //this will append to the existing elements
    });
});
在身体里

<div class="pull-left"><a href="#" onclick='removeDOM(this)' id="id" hidden>Remove</a></div>

这就是你的意思吗

可以在添加新内容之前动态添加remove div。 这样说:
obj.append(“”)

这就是你的意思吗

可以在添加新内容之前动态添加remove div。 这样说:
obj.append(“”)

请始终记住,当覆盖默认功能时,这是您的朋友:

e.preventDefault();
这个JSFIDLE似乎工作得很好:
如果您希望同时维护初始元素,那么这段代码将起到关键作用:

请记住,当覆盖默认功能时,这是您的朋友:

e.preventDefault();
这个JSFIDLE似乎工作得很好:
如果您希望同时维护初始元素,那么下面的代码将起到以下作用:

将该行的模板放在单独的元素中:

<div class="template">
  <div class="content">
    ...the row template goes here
  </div>
</div>
<div class="row">
</div>
从一开始复制模板中的行一次,单击链接时:

function copy() {
    $("div.row").append($(".template .content").clone());
}

$(document).ready(function () {
    copy();
    $("#Add").click(copy);
});

演示:

将行的模板放在单独的元素中:

<div class="template">
  <div class="content">
    ...the row template goes here
  </div>
</div>
<div class="row">
</div>
从一开始复制模板中的行一次,单击链接时:

function copy() {
    $("div.row").append($(".template .content").clone());
}

$(document).ready(function () {
    copy();
    $("#Add").click(copy);
});

演示:

只是想到了更好的实现。与其总是隐藏原始文件,不如有条件地隐藏它


好处是,用户可以删除任何他/她想要的行。

只是想到了更好的实现。与其总是隐藏原始文件,不如有条件地隐藏它


好处是,用户可以删除任何他/她想要的行。

从html中删除按钮,并在单击按钮时附加它

 var newRemoveButton ='<div class="pull-left"><a href="#" onclick='removeDOM(this)' id="id" hidden>Remove</a> </div>';
 $(newRemoveButton).appendTo(obj);
var newRemoveButton='';
$(newRemoveButton).appendTo(obj);

您还可以查看此按钮以添加一些效果。

从html中删除按钮,并在单击按钮时将其追加

 var newRemoveButton ='<div class="pull-left"><a href="#" onclick='removeDOM(this)' id="id" hidden>Remove</a> </div>';
 $(newRemoveButton).appendTo(obj);
var newRemoveButton='';
$(newRemoveButton).appendTo(obj);

你也可以看看这个来增加一些效果。

不用担心。。我已经得到了答案。。谢谢你的帮助:)不用担心。。我已经得到了答案。。谢谢你的帮助:)