2017-05-08 45 views
0

樣本HTML來刪除重複的td標籤值:從HTML如何使用JS或jquery的

<tbody> 
    <tr> 
     <th style="width: 65%;">FD Name</th> 
     <th style="width:35%;">PDF</th> 
    </tr> 
    <tr> 
     <td>NT BT Small Cap FD</td> 
     <td> 
      <div> 
       <a target="_self" onclick="window.open('URL/2509-pqr-statement.pdf'); return false;">ST</a> (55 kb)</div> 
     </td> 
    </tr> <tr> 
     <td>NT GB GT FD</td> 
     <td> 
      <div> 
       <a target="_self" onclick="window.open('URL/12111-pqr-statement.pdf'); return false;">ST</a> (61 kb)</div> 
     </td> 
    </tr> <tr> 
     <td>NT GB GT FD</td> 
     <td> 
      <div> 
       <a target="_self" onclick="window.open('URL/12111-pqr-statement.pdf'); return false;">ST</a> (61 kb)</div> 
     </td> 
    </tr> <tr> 
     <td>NT Mutual GB Discovery FD</td> 
     <td> 
      <div> 
       <a target="_self" onclick="window.open('URL/4684-pqr-statement.pdf'); return false;">ST</a> (69 kb)</div> 
     </td> 
    </tr> <tr> 
     <td>NT Mutual GB Discovery FD</td> 
     <td> 
      <div> 
       <a target="_self" onclick="window.open('URL/4684-pqr-statement.pdf'); return false;">ST</a> (69 kb)</div> 
     </td> 
    </tr> 
</tbody> 

如何刪除重複值TD例如NT GB GT FD,NT相互GB發現FD被複制。 使用JS/jQuery的任何指針或想法?

+0

比較單元格的數據,如果兩者相等,則刪除第二個實例? – dommmm

+0

你問關於重複*行*或重複*單元*? – nnnnnn

回答

0

duplicate刪除行是每個trfirst td child映射的對象。如果這些孩子從未在對象內部看到過,那麼duplicate會保留它。在另一方面,如果這些孩子都已經內duplicate,那麼我們將刪除此td.parent(),這是其tr

var duplicate = {}; 

$('tr td:first-child').each (function() { 
    var fdName = $(this).html() 

    if (duplicate.hasOwnProperty(fdName)) { 
     $(this).parent().remove(); 
    } else { 
     duplicate[fdName] = 'true'; 
    } 
}); 

工作的jsfiddle:https://jsfiddle.net/hdvhtse0/1/

+0

您是否看到以下方法代碼的任何問題---> var seen = {}; 。 $( '表TR')每個(函數(){ 變種的txt = $(本)的.text();如果 (見於[TXT]) $(本)卸下襬臂(); 別的 看出[txt] = true; }); – user3669116

0

沿着每一行向下走時,使用一個對象來存儲查找的文本。如果文本已經看到

var textLookup={}; 

$('#my-table tbody tr:gt(0)').each(function(){ 
    var $row = $(this), 
     targetText = $row.find('td:first').text().trim(); 
     // may want to make sure the text isn't empty string also?? 
     if(textLookup[targetText]){ 
      $row.remove() 
     } 
     textLookup[targetText]=true; 
}); 

DEMO

+0

您是否看到以下方法代碼存在任何問題---> var seen = {}; $('table tr')。each(function(){var txt = $(this).text(); if(seen [txt])$(this).remove(); else seen [txt] = true; }); – user3669116

相關問題