在JavaScript中复制表格(table)的一行通常涉及以下几个基础概念:
cloneNode
方法复制DOM节点。cloneNode
方法复制该行。以下是一个简单的示例,展示如何复制表格的一行:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Copy Table Row</title>
</head>
<body>
<table id="myTable" border="1">
<tr>
<td>Row 1</td>
<td><button onclick="copyRow(this)">Copy</button></td>
</tr>
<tr>
<td>Row 2</td>
<td><button onclick="copyRow(this)">Copy</button></td>
</tr>
</table>
<script>
function copyRow(btn) {
// 获取当前行的父节点(表格)
var table = document.getElementById("myTable");
// 获取当前行
var row = btn.parentNode.parentNode;
// 复制当前行
var newRow = row.cloneNode(true);
// 清空复制行的输入值(如果有输入框)
var inputs = newRow.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
inputs[i].value = "";
}
// 将复制行插入到表格末尾
table.appendChild(newRow);
}
</script>
</body>
</html>
copyRow
函数接收一个按钮元素作为参数。cloneNode(true)
方法复制当前行及其所有子节点。cloneNode(true)
方法默认不会复制绑定的事件。如果需要复制事件,需要手动重新绑定。通过以上方法,你可以轻松实现JavaScript中表格行的复制功能。
领取专属 10元无门槛券
手把手带您无忧上云