jQuery - 只添加新的div,只留下旧的div

时间:2012-04-02 22:20:44

标签: jquery html merge parent overwrite

我有2个父div(旧的和新的),如果我点击Click to Add,我试图让新列表中的div与旧列表“合并”,并删除新列表。有2个id =“div3”,一个在旧,一个在新。当它们合并时,旧的> id =“div3”应该覆盖新的> id =“div3”,或者只是删除它自己。可能重复div id的原因是因为id =“new”> divs将从服务器输出,我只想在旧列表中使用唯一ID。

<span id="adder">Click 2 Add</span>

<div id="old">
<div id="div1">div1</div>
<div id="div2">div2</div>
<div id="div3">div3</div>
</div>

<div id="new">
<div id="div3">div3</div>
<div id="div4">div4</div>
<div id="div5">div5</div>
</div>

http://jsfiddle.net/5kDGR/12/

1 个答案:

答案 0 :(得分:1)

这就是你想要的吗? http://jsfiddle.net/5kDGR/17/

   $("#adder").click(function() {

   var content = $('<div/>');
   $('#new div').each (function()
                    {
                        content.append(this);
                    });
   $('#old div').each(function ()
   {
      if (!($(content).find('#' + $(this).attr('id')).length))
      {
          content.prepend(this);
      }
   });
   $('#old').html(content);
   $('#new').remove();
});