You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并HTML表格中同ID<tr>元素的列内容?

实现HTML表格同ID行的列内容合并

当然可以实现这个需求!不过先提个重要的小提醒:HTML规范明确要求同一个文档中元素的ID必须唯一,你当前代码里存在两个<tr id="74">其实是不符合标准的,虽然浏览器通常不会因此直接报错,但这种写法可能引发后续的DOM操作问题,建议后续尽量避免(比如改用class来标识同组行)。不过针对你现在的场景,我们依然可以通过JavaScript来完成内容合并。

具体实现步骤

我们可以通过DOM操作,把相同ID行的Interfaces和Subnet列内容合并到同一行,并用<br>分隔:

// 获取所有id为"74"的表格行
const duplicateRows = document.querySelectorAll('#74');

// 当存在重复行时执行合并逻辑
if (duplicateRows.length > 1) {
  // 以第一行作为最终保留的目标行
  const targetRow = duplicateRows[0];
  // 获取目标行中需要合并的两个单元格
  const interfaceCell = targetRow.querySelector('td:nth-child(2)');
  const subnetCell = targetRow.querySelector('td:nth-child(3)');

  // 遍历剩余的重复行,合并内容并移除多余行
  for (let i = 1; i < duplicateRows.length; i++) {
    const currentRow = duplicateRows[i];
    // 追加Interfaces列的内容(用<br>换行分隔)
    interfaceCell.innerHTML += `<br>${currentRow.querySelector('td:nth-child(2)').textContent}`;
    // 追加Subnet列的内容
    subnetCell.innerHTML += `<br>${currentRow.querySelector('td:nth-child(3)').textContent}`;
    // 移除当前重复行
    currentRow.remove();
  }
}

更规范的优化建议

如果后续需要处理更多类似的分组行,建议把重复的ID改成class,比如:

<tr class="group-74">...</tr>
<tr class="group-74">...</tr>

然后把JS中的querySelectorAll('#74')改成querySelectorAll('.group-74'),这样既符合HTML规范,也能更灵活地处理多组数据。

内容的提问来源于stack exchange,提问作者Madeck FromEarth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:42:54