首先获取到你已经添加的所有的元素,把他们放在一个数组里,
然后再把新添加的内容放在一个数组里。两个数组比较把第二个数组里重复的第一个数组的内容去掉。
比如下面的代码:如果表格已经有数据了。我们还想往里面添加新的,不一样的id。
<table class="table1">
<thead>
<tr>名字</tr>
<tr>姓名</tr>
<tr>班级</tr>
</thead>
<tbody>
<tr><td class="A" id="2">11</td><td>12</td><td>13</td></tr>
<tr><td class="A" id="3">21</td><td>22</td><td>23</td></tr>
<tr><td class="A" id="7">31</td><td>12</td><td>33</td></tr>
</tbody>
</table>
首先获取所有的现有的id
var newdata=$(".table1 tbody tr").map(function(){
return $(this).find(".A").attr("id"); //注意这个里面一定要有return
}).get(); //这样得到的元素都放在一个newdata的数组里啦。
var items=[{name:'B',id:'1'},{name:'BB',id:'2'},{name:'BBB',id:'4'}];在这里就假设一下这个为新添加的元素啦。
两层循环比较两个数据
for(var i=0;i<newdata.length;i++){ //遍历出newdata所有的元素
m=newdata[i]; //m是取出值
for(var j=0;j<items.length;j++){ //遍历items
if(m=items[j].id) { 如果m的值和items里面的id相同就从items里面删除这个元素。
items.splice(j,1) splice删除数组的元素。索引是j,长度是1.因为是循环的所以查到一个就删除一个
}
}
}