在一个类中重复div然后删除重复的一个

时间:2013-12-09 08:56:16

标签: javascript jquery

我有一个div

<div class='complete_status'>Upload Complete</div>

可能包含

 <div class='complete_status'><div class="test">test test</div></div>

我想要

<div class='complete_status'><div class="test">test test</div><div class="test">test test</div></div>

“comlete_status”里面的div“test”多了一个。然后删除名为“test”的另一个div

这里的次要更新:  我有20个div,类名“.complete_status”我希望根据多个div 每个div应该只有一个类“test”

7 个答案:

答案 0 :(得分:4)

定位.test内的.complete_status元素,并删除索引大于0的任何元素

$('.complete_status .test:gt(0)').remove();

FIDDLE

或删除所有孩子,但多个父母的第一个孩子

$('.complete_status .test:not(:first-child)').remove(); 

FIDDLE

答案 1 :(得分:2)

$('.complete_status .test').slice(1).remove();

http://jsfiddle.net/KL727/1/


对于 div.complete_status 的多个实例:

$('.complete_status').each(function() {
  $('.test', this).slice(1).remove();
});

答案 2 :(得分:1)

  

如果($( '试验')。之后())

   $('.test').after().remove()

答案 3 :(得分:0)

您可以在追加新状态值之前 empty() 状态DIV。

$('.complete_status').empty().append('<div class="test">Test</div>');

答案 4 :(得分:0)

if ($(".test").length > 1)
{
   $("div.test:not(:first)").remove();
}

检查是否有多个具有 test 类的元素,并删除除第一个之外的所有元素。

答案 5 :(得分:0)

$('.complete_status').html($('.complete_status .test').first().html());

如果您有其他节点要保留在父节点内:

    var p = $('.complete_status .test');
    var f = p.first();
    p.remove();
    $('.complete_status').html(f.html());

答案 6 :(得分:0)

试试这个:

var ele = $('.complete_status > .test').slice(1);
$('.complete_status').text('').append(ele);