2013-06-28 19 views
0

我有div的名单像这样与重复数据删除项目属性

<div data-id="001">Blah Blah Blah</div> 
<div data-id="001">Blah Blah Blah</div> 
<div data-id="002">Blah Blah Blah</div> 
<div data-id="002">Blah Blah Blah</div> 
<div data-id="002">Blah Blah Blah</div> 
<div data-id="003">Blah Blah Blah</div> 
<div data-id="003">Blah Blah Blah</div> 
<div data-id="004">Blah Blah Blah</div> 

是否有可能通过这个列表来扫描并删除重复的数据的任何项目,使我会的东西结束更像是:

<div data-id="001">Blah Blah Blah</div> 
<div data-id="002">Blah Blah Blah</div> 
<div data-id="003">Blah Blah Blah</div> 
<div data-id="004">Blah Blah Blah</div> 

回答

9

当然,你列举的所有项目只跟踪任何你已经找到。

var found = {}; 
$('[data-id]').each(function(){ 
    var $this = $(this); 
    if(found[$this.data('id')]){ 
     $this.remove(); 
    } 
    else{ 
     found[$this.data('id')] = true; 
    } 
}); 

活生生的例子:http://jsfiddle.net/kpEtQ/

+0

这会工作,谢谢:d –