当前位置:首页 > JavaScript

js怎么实现增行

2026-04-04 17:54:24JavaScript

使用 JavaScript 动态增行

在表格中动态增加行可以通过操作 DOM 实现。以下是几种常见方法:

方法一:使用 insertRow()insertCell()

通过表格的 insertRow() 方法在指定位置插入新行,再使用 insertCell() 插入单元格:

function addRow() {
  const table = document.getElementById("myTable");
  const newRow = table.insertRow(-1); // -1 表示在末尾插入

  const cell1 = newRow.insertCell(0);
  const cell2 = newRow.insertCell(1);

  cell1.innerHTML = "新行单元格1";
  cell2.innerHTML = "新行单元格2";
}

方法二:拼接 HTML 字符串

通过拼接 HTML 字符串并插入到表格中:

js怎么实现增行

function addRow() {
  const table = document.getElementById("myTable");
  const newRowHtml = `
    <tr>
      <td>新行单元格1</td>
      <td>新行单元格2</td>
    </tr>
  `;
  table.insertAdjacentHTML('beforeend', newRowHtml);
}

方法三:使用模板引擎

对于复杂场景可以使用模板引擎如 Handlebars:

const source = document.getElementById("row-template").innerHTML;
const template = Handlebars.compile(source);

function addRow(data) {
  const html = template(data);
  document.getElementById("myTable").insertAdjacentHTML('beforeend', html);
}

使用 jQuery 增行

如果项目中使用 jQuery,可以简化操作:

js怎么实现增行

$("#addRowBtn").click(function() {
  $("#myTable").append(`
    <tr>
      <td>新行单元格1</td>
      <td>新行单元格2</td>
    </tr>
  `);
});

动态绑定事件

新增行后需要绑定事件时,推荐事件委托:

document.getElementById("myTable").addEventListener("click", function(e) {
  if(e.target.classList.contains("delete-btn")) {
    e.target.closest("tr").remove();
  }
});

表单输入型增行

对于需要输入数据的行,可以创建表单元素:

function addInputRow() {
  const table = document.getElementById("myTable");
  const newRow = table.insertRow(-1);

  const cell1 = newRow.insertCell(0);
  const cell2 = newRow.insertCell(1);

  cell1.innerHTML = '<input type="text" class="form-control">';
  cell2.innerHTML = '<button class="save-btn">保存</button>';
}

性能优化建议

当需要批量添加大量行时,使用文档片段(documentFragment):

function addMultipleRows(data) {
  const fragment = document.createDocumentFragment();

  data.forEach(item => {
    const row = document.createElement("tr");
    row.innerHTML = `
      <td>${item.name}</td>
      <td>${item.value}</td>
    `;
    fragment.appendChild(row);
  });

  document.getElementById("myTable").appendChild(fragment);
}

标签: js
分享给朋友:

相关文章

js 实现倒计时

js 实现倒计时

实现倒计时的基本方法 使用 JavaScript 实现倒计时可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是两种常见实现方式。 使用 setInterval 实…

js实现瀑布流

js实现瀑布流

实现瀑布流布局 瀑布流布局是一种常见的网页布局方式,常用于图片展示、商品列表等场景。以下是使用 JavaScript 实现瀑布流布局的几种方法。 纯 JavaScript 实现 通过计算元素的位置和…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…

js实现跑马灯

js实现跑马灯

实现跑马灯效果 使用HTML和JavaScript可以轻松实现跑马灯效果。以下是两种常见的实现方式: HTML结构 <div id="marquee"> <span>…