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

如何用JavaScript的append()替代jQuery的append()实现表格追加

用原生JavaScript实现表格内容追加

嘿,我懂你想跳过jQuery,用纯原生JS完成把表格2的内容插入到表格1末尾的需求~先把你给出的代码补全,再给你完整的实现方案:

首先是HTML结构,我们需要两个表格和两个触发按钮:

<table id="lst1" border="1">
  <tbody>
    <tr><td>表格1行1</td></tr>
    <tr><td>表格1行2</td></tr>
  </tbody>
</table>

<table id="lst2" border="1">
  <tbody>
    <tr><td>表格2行1</td></tr>
    <tr><td>表格2行2</td></tr>
  </tbody>
</table>

<button id="jQuery">用jQuery执行</button>
<button id="jScript">用原生JS执行</button>

接下来是完整的JS代码,包含你写的jQuery版本和补全的原生JS版本:

// jQuery版本(你已实现的部分)
$(document).ready(function (){
  $("#jQuery").on("click", function () {
    $("#lst1").find("tbody").append( $("#lst2").find("tbody").html() );
  });

  // 原生JavaScript版本
  document.getElementById("jScript").addEventListener("click", function() {
    // 获取两个表格的tbody元素
    const table1Body = document.querySelector("#lst1 tbody");
    const table2Body = document.querySelector("#lst2 tbody");
    
    // 把表格2tbody里的内容追加到表格1tbody末尾
    // 方式1:直接追加HTML内容(和jQuery逻辑一致,复制内容)
    table1Body.innerHTML += table2Body.innerHTML;
    
    // 方式2:如果想移动而非复制节点(原表格2内容会被移除),可以用下面的代码
    // while(table2Body.firstChild) {
    //   table1Body.appendChild(table2Body.firstChild);
    // }
  });
});

原生JS实现的关键点:

  • 用document.querySelector或者getElementById获取DOM元素,替代jQuery的选择器语法
  • 用addEventListener绑定点击事件,替代jQuery的.on()方法
  • 如果只是复制表格2的内容,直接操作innerHTML就能和jQuery的.append(html)效果一致;如果是要把表格2的节点直接移动过去(原表格2会清空),就用appendChild循环转移子节点

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:38:49