javascript - 删除重复的特定 td 文本

标签 javascript jquery

我有这样的表格数据

enter image description here

如何删除特定 td(Generasi、单位代码、代理代码、单位名称)上具有重复文本的文本并仅保留 1

所以结果可以是这样的

enter image description here

这是我的 fiddle JSFIDDLE

最佳答案

我已经解决了这个问题。请查看 html 和脚本中的以下更改。 此代码将在您的表格下方添加一个未排序的表格,并完全删除您的js并粘贴下面的内容。 在 HTML 中,我在下面添加了一个 div

var FinalIndex = [];
var tbl = $('table#tableUnit tr').get().map(function(row) {
  return $(row).find('td').get().map(function(cell) {
    return $(cell).html();
  });
});
/* console.log(tbl) */
$.each(tbl, function(index, data) {
  if (data.length > 5) {
    console.log('data:' + index);
    count = 0;
    $.each(tbl, function(indexF, dataF) {
      if (indexF <= index) {
        if (data[0] == dataF[0] && data[1] == dataF[1] && data[2] == dataF[2] && data[3] == dataF[3] && count == 0 && count == 0) {
          count = count + 1;
          if (index == indexF) {
            console.log("comparing :" + index + "with" + indexF);
            console.log('count:' + count);
            console.log(data[0] + '.' + data[1] + "  first value  " + dataF[0]);
            FinalIndex.push(index);
          }
        }
      }
    });
  } else {
    FinalIndex.push(index);
  }
});
console.log(FinalIndex)

function makeTable(tbl) {
  var table = '<table>';
  $.each(tbl, function(index, value) {

    if (jQuery.inArray(index, FinalIndex) !== -1) {
      table += '<tr>';
      $.each(value, function(ind, v1) {
        /* console.log(ind); */

        table += '<td>' + v1 + '</td>';

      });
      table += '</tr>';
    }

  });
  /* return ($(table)); */
  table += '</table>';
  console.log(table);
  $('.finalTable').html(table);
};

makeTable(tbl);

$('#btnOrig').click(function(){
  $('#orig_table').toggle();
});
#orig_table{border:1px solid red;box-sizing:border-box;display:none;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<button id="btnOrig">Show Original Table</button>
<div id="orig_table">
<table class="table" id="tableUnit" style="width: 100%;">
  <thead>
    <tr>
      <th style="width: 7em;"><strong>Generasi</strong></th>
      <th style="width: 20em;"><strong>Unit Code</strong></th>
      <th style="width: 20em;"><strong>Agent Code Unit</strong></th>
      <th style="width: 6em;"><strong>Unit Name</strong></th>
      <th style="width: 6em;" class="center"><strong>No.</strong></th>
      <th style="width: 5em;"><strong>Agent Code</strong></th>
      <th style="width: 15em;"><strong>Agent Name</strong></th>

      <th style="width: 15em;"><strong>VOC</strong></th>
      <th style="width: 15em;"><strong>KPM</strong></th>
      <th style="width: 15em;" class="right"><strong>Case</strong></th>
      <th style="width: 15em;" class="right"><strong>ALP</strong></th>
      <th></th>
    </tr>
  </thead>


  <tbody>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-0</strong></td>
      <td></td>
      <td class="right"><strong>0</strong></td>
      <td class="right"><strong>0</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td>G-1</td>
      <td>A6011</td>
      <td>00923917</td>
      <td>FRANSISKA YULIANA B.D.</td>
      <td>1</td>
      <td>00905445</td>
      <td>NESTI RAHAYU</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-1</td>
      <td>A6011</td>
      <td>00923917</td>
      <td>FRANSISKA YULIANA B.D.</td>
      <td>2</td>
      <td>00905448</td>
      <td>AISYAH</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">30.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-1</td>
      <td>A6011</td>
      <td>00923917</td>
      <td>FRANSISKA YULIANA B.D.</td>
      <td>3</td>
      <td>00905454</td>
      <td>ADYANTA YOGA PRADANA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-1</td>
      <td>A7924</td>
      <td>00947903</td>
      <td>MELVA SUPARDI</td>
      <td>4</td>
      <td>00947903</td>
      <td>MELVA SUPARDI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-1</strong></td>
      <td></td>
      <td class="right"><strong>5</strong></td>
      <td class="right"><strong>48.000.000</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td>G-2</td>
      <td>A5974</td>
      <td>00923389</td>
      <td>ALI WIDODO</td>
      <td>1</td>
      <td>00918088</td>
      <td>JOHN HENDRI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">12.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-2</td>
      <td>A5993</td>
      <td>00923678</td>
      <td>PATENSAROHA PANJAITAN</td>
      <td>2</td>
      <td>00924255</td>
      <td>PURNAMA MARINTAN</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">4</td>
      <td class="right">28.800.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-2</td>
      <td>A8603</td>
      <td>00966488</td>
      <td>RISANG RUDI PERMADI</td>
      <td>3</td>
      <td>00966488</td>
      <td>RISANG RUDI PERMADI</td>
      <td>SM</td>
      <td>SMG043</td>
      <td class="right">2</td>
      <td class="right">31.200.000</td>
      <td></td>
    </tr>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-2</strong></td>
      <td></td>
      <td class="right"><strong>8</strong></td>
      <td class="right"><strong>72.000.000</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td>G-3</td>
      <td>A2190</td>
      <td>00906041</td>
      <td>LIESTYANINGSIH PRASETYO</td>
      <td>1</td>
      <td>00906041</td>
      <td>LIESTYANINGSIH PRASETYO</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A6659</td>
      <td>00910973</td>
      <td>FERMOLINA</td>
      <td>2</td>
      <td>00910973</td>
      <td>FERMOLINA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">4</td>
      <td class="right">73.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A5974</td>
      <td>00923389</td>
      <td>ALI WIDODO</td>
      <td>3</td>
      <td>00911258</td>
      <td>CAROTRIANA HARTIANI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">8.400.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A7824</td>
      <td>00913029</td>
      <td>YULI PURWANTI</td>
      <td>4</td>
      <td>00913029</td>
      <td>YULI PURWANTI</td>
      <td>SM</td>
      <td>SMG043</td>
      <td class="right">1</td>
      <td class="right">4.800.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A8603</td>
      <td>00966488</td>
      <td>RISANG RUDI PERMADI</td>
      <td>5</td>
      <td>00925635</td>
      <td>RICHA DEWI AZDANI</td>
      <td>SM</td>
      <td>SMG043</td>
      <td class="right">4</td>
      <td class="right">18.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A2006</td>
      <td>00905496</td>
      <td>MARYANAH</td>
      <td>6</td>
      <td>00941248</td>
      <td>ROCHIMI DIAN PUSPITASARI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">9.600.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A7240</td>
      <td>00942942</td>
      <td>SOE ESTI MURNIATI</td>
      <td>7</td>
      <td>00942942</td>
      <td>SOE ESTI MURNIATI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">3</td>
      <td class="right">23.040.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A8053</td>
      <td>00951213</td>
      <td>A. M. GANDA MARPAUNG</td>
      <td>8</td>
      <td>00951213</td>
      <td>A. M. GANDA MARPAUNG</td>
      <td>JB3</td>
      <td>JAM707</td>
      <td class="right">1</td>
      <td class="right">4.800.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A2006</td>
      <td>00905496</td>
      <td>MARYANAH</td>
      <td>9</td>
      <td>00953857</td>
      <td>MOCH KEMAL ASYAF</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">36.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-3</td>
      <td>A2006</td>
      <td>00905496</td>
      <td>MARYANAH</td>
      <td>10</td>
      <td>00968671</td>
      <td>GITA NELWAN</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">12.000.000</td>
      <td></td>
    </tr>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-3</strong></td>
      <td></td>
      <td class="right"><strong>21</strong></td>
      <td class="right"><strong>195.640.000</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td>G-4</td>
      <td>A4040</td>
      <td>00909748</td>
      <td>KARINA</td>
      <td>1</td>
      <td>00909748</td>
      <td>KARINA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">54.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A6091</td>
      <td>00910151</td>
      <td>NONAH SUHANAH</td>
      <td>2</td>
      <td>00910517</td>
      <td>ALFIAN IDRUS</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A5974</td>
      <td>00923389</td>
      <td>ALI WIDODO</td>
      <td>3</td>
      <td>00912869</td>
      <td>ROHMAT</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">12.060.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A6659</td>
      <td>00910973</td>
      <td>FERMOLINA</td>
      <td>4</td>
      <td>00925358</td>
      <td>ANDRIYANI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">8.400.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A6789</td>
      <td>00909167</td>
      <td>WAHYU RIDWAN NUGROHO</td>
      <td>5</td>
      <td>00938577</td>
      <td>ACHMAD TAUFIK</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">4.800.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A8822</td>
      <td>00944260</td>
      <td>DESSY RANTAU WIDIASARI</td>
      <td>6</td>
      <td>00944260</td>
      <td>DESSY RANTAU WIDIASARI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A8896</td>
      <td>00946599</td>
      <td>ILHAM WAHYUDIN</td>
      <td>7</td>
      <td>00946599</td>
      <td>ILHAM WAHYUDIN</td>
      <td>SB</td>
      <td>SKB008</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A6091</td>
      <td>00910151</td>
      <td>NONAH SUHANAH</td>
      <td>8</td>
      <td>00947779</td>
      <td>YENNI CHRISTINA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">12.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A7204</td>
      <td>00941979</td>
      <td>MANUELA R SIAGIAN</td>
      <td>9</td>
      <td>00959611</td>
      <td>LAURENTIA DYAH IKA G</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">10.400.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A2042</td>
      <td>00905588</td>
      <td>HENY BAYU SAFITRI</td>
      <td>10</td>
      <td>00965234</td>
      <td>YASAN</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">12.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-4</td>
      <td>A6659</td>
      <td>00910973</td>
      <td>FERMOLINA</td>
      <td>11</td>
      <td>00968489</td>
      <td>ANDRE PERBAWA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">3</td>
      <td class="right">36.000.000</td>
      <td></td>
    </tr>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-4</strong></td>
      <td></td>
      <td class="right"><strong>14</strong></td>
      <td class="right"><strong>167.660.000</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>
  <tbody>
    <tr>
      <td>G-5</td>
      <td>A2157</td>
      <td>00905917</td>
      <td>SYARIFAH</td>
      <td>1</td>
      <td>00905917</td>
      <td>SYARIFAH</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">4</td>
      <td class="right">30.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A2043</td>
      <td>00905590</td>
      <td>BUNGAIDAL ADKHIA</td>
      <td>2</td>
      <td>00911669</td>
      <td>ZULFIKAR</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">18.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A8896</td>
      <td>00946599</td>
      <td>ILHAM WAHYUDIN</td>
      <td>3</td>
      <td>00914524</td>
      <td>RITAWATI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">3</td>
      <td class="right">13.200.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A8896</td>
      <td>00946599</td>
      <td>ILHAM WAHYUDIN</td>
      <td>4</td>
      <td>00923652</td>
      <td>DEDEN AMARULLAH</td>
      <td>SB</td>
      <td>SKB008</td>
      <td class="right">1</td>
      <td class="right">4.200.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A6916</td>
      <td>00937689</td>
      <td>SUDIRMAN</td>
      <td>5</td>
      <td>00937689</td>
      <td>SUDIRMAN</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A8199</td>
      <td>00944267</td>
      <td>DEWI KARTINI</td>
      <td>6</td>
      <td>00944267</td>
      <td>DEWI KARTINI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">30.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A8131</td>
      <td>00954706</td>
      <td>HENDRA SURYA</td>
      <td>7</td>
      <td>00954706</td>
      <td>HENDRA SURYA</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">15.600.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A6307</td>
      <td>00911807</td>
      <td>BERTA M PURBA</td>
      <td>8</td>
      <td>00964680</td>
      <td>DANIEL</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">1</td>
      <td class="right">6.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A8822</td>
      <td>00944260</td>
      <td>DESSY RANTAU WIDIASARI</td>
      <td>9</td>
      <td>00967703</td>
      <td>YANTI ARIANI</td>
      <td>TN1</td>
      <td>JKT0A1</td>
      <td class="right">2</td>
      <td class="right">18.000.000</td>
      <td></td>
    </tr>
    <tr>
      <td>G-5</td>
      <td>A7824</td>
      <td>00913029</td>
      <td>YULI PURWANTI</td>
      <td>10</td>
      <td>00968122</td>
      <td>NOVIA BETSY CLARISSA</td>
      <td>SM</td>
      <td>SMG043</td>
      <td class="right">1</td>
      <td class="right">24.000.000</td>
      <td></td>
    </tr>
    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>SUB TOTAL G-5</strong></td>
      <td></td>
      <td class="right"><strong>18</strong></td>
      <td class="right"><strong>165.000.000</strong></td>
      <td></td>
    </tr>
    <tr>
      <td colspan="12"></td>
    </tr>
  </tbody>

  <tfoot>

    <tr bgcolor="#ededf9">
      <td colspan="8" class="right"><strong>GRAND TOTAL</strong></td>
      <td></td>
      <td class="right"><strong>66</strong></td>
      <td class="right"><strong>648.300.000</strong></td>
      <td></td>
    </tr>
  </tfoot>
</table>
</div><!-- #orig_table -->
<h2>Final Table:</h2>
<div class="finalTable"></div>

关于javascript - 删除重复的特定 td 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54918079/

相关文章:

javascript - 当不相关的 div 为空时更改文本

javascript - 确定一个字符串是否是一个有效的 jQuery 选择器?

javascript - 如何在组件内为包含图片和 URL 的 LI 项目创建 React Loop?

动态加载到 iframe 的 JavaScript 在父范围内运行

javascript - typescript : Importing something that was exported with module. 导出

javascript - 如何使用 JS 将页面中的所有声音静音?

javascript - 带有模式的 grunt-usemin 仅替换第一个匹配项

javascript - jQuery 原型(prototype)冲突 : table filter plugin

javascript - 带有全局变量的 IE 错误。如何绕过这个错误?

javascript - 如何将选中的复选框值推送到数组中?