Jquery 从div中删除元素

Jquery 从div中删除元素,jquery,Jquery,我想知道如何总是删除div的最后一个元素,直到只有一个元素,代码如下。 我已经可以这样做了以后添加它现在是失踪删除 $("#add").click(function() { $("#divparent").append($("#divchild").html()); }); $("#remove").click(function() { //new code }); 首先,你不想给所有孩子相同的id 这应该适合您: $("#remove").click(function()

我想知道如何总是删除div的最后一个元素,直到只有一个元素,代码如下。 我已经可以这样做了以后添加它现在是失踪删除

$("#add").click(function()
{
    $("#divparent").append($("#divchild").html());
});
$("#remove").click(function()
{
   //new code
});


首先,你不想给所有孩子相同的id

这应该适合您:

$("#remove").click(function()
{
    $('#divparent').find(':last-child').not(':only-child').remove();
});
工作示例:


要删除最后一个直到剩下一个

我会做一些事情

  • 我强烈建议您不要附加与其他项具有相同ID的项。把它改成一个类
  • 如果这是一个基于asp的列表,并且项目是动态添加的,您可能需要查看
  • 我会()
    .divchild
    ,而不会对孩子施加压力。注意我是如何修改add函数的
    • 注意<代码> .CURONE()/CUD>默认值为false,您可能需要考虑Trtrue,但应根据ASP下拉列表中的内容来调查它以适合您的解决方案。
实例:


因为这个问题的措辞,你很难理解你在问什么。我很难过,我想-1你忽略了他的要求,留下至少一个元素,但是想+1你是除了我之外唯一的答案,看看他正在插入一个ID为dupped的孩子=)@matchew:asp代码中的
ID
是否转换为
ID
属性?我不知道asp是如何工作的。这是一个很好的问题,我对asp也不熟悉,事实上我的答案中忽略了这一行,但我认为是这样。没问题+1.多多少少在我面前有一个有效的答案。这克隆了整个div,而不仅仅是问题中的内容,但我想这一定是OP真正想要的。这很难说,但似乎是合乎逻辑的。否则,您只是附加div的html,而没有保留任何样式或功能。请参阅:它使用OP的添加功能。它似乎不是我们想要的。但我承认这很难说。是的,我也说不清。我假设这是一个
元素,所以可能没有任何内联样式(无论如何都应该在样式表中)。就功能而言,对于这样的动态元素,可能应该使用
.delegate()
.live()
的事件委派,但正如您所说,很难说……无论如何,处理潜在问题时使用+1。
$("#remove").click(function()
{
    $('#divparent').find(':last-child').not(':only-child').remove();
});
$("#remove").click(function()
{
   if($('#divparent > div').length > 1){
          $('#divparent').find(':last-child').remove();
   }
});
$("#add").click(function() {
    $('.divchild:last').clone(true).fadeIn().insertAfter($('.divchild:last'));
});
$("#remove").click(function() {
    var count = $('.divchild').length;
    if (count > 1) {
        $('.divchild:last').fadeOut().detach()
    }
    else {
        alert('You Must Have At Least One Child');
    }
});