删除单击的克隆div

时间:2012-07-19 10:26:33

标签: jquery

我克隆了一个div,在这个div中我有几个按钮,主题是一个删除按钮。一旦我点击删除按钮,一个未被点击的div被删除而不是点击的一个。我有这个小提琴{ {3}}

这是函数

$(document).ready(function() {
    $("#button").click(function() {
        $("<div class='newclone' id='xxx'><article><label>Firstname</label><input type='text'><label>Secondname</label><input type='text'><label>City</label><input type='text'><input type='hidden' value='4'></article><button class='one'>Save</button><button class='two'>Delete</button><button class='three'>Cancel</button></div>").appendTo('.clone-container');
    });
    $('.two').live("click", function() {
        $('#xxx').fadeOut("slow", function() {
            $(this).remove();
        });
    });
});

如何删除点击的div?。

2 个答案:

答案 0 :(得分:3)

您可以使用closest(),在此处查看更新小提琴:

http://jsfiddle.net/qBYzf/1/

所以你需要改变:

$('#xxx')

要:

$(this).closest('#xxx')

此外,您还为每个克隆的div分配了相同的id=xxx id每个元素应该是唯一的,使用class代替或id值,以使其符合W3C规则/标准。

<强>文档

答案 1 :(得分:2)

试试这样:

$(this).closest('#xxx').fadeOut(....

而不是:

$('#xxx').fadeOut(...

Live demo

虽然这样可行,但在任何情况下都不应该在同一页面上有两个具有相同值的ID,这不符合W3C标准。

相关问题