在網(wǎng)頁(yè)制作中,表格的使用是非常頻繁的。但是有時(shí)候我們需要復(fù)制一些表格來(lái)更方便地進(jìn)行數(shù)據(jù)處理,這時(shí)候我們就可以使用JavaScript來(lái)實(shí)現(xiàn)復(fù)制表格的功能。
首先我們需要?jiǎng)?chuàng)建一個(gè)原始表格,比如下面這個(gè)表格:
<table id="original">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>性別</th>
</tr>
<tr>
<td>張三</td>
<td>24</td>
<td>男</td>
</tr>
<tr>
<td>李四</td>
<td>26</td>
<td>女</td>
</tr>
<tr>
<td>王五</td>
<td>28</td>
<td>男</td>
</tr>
</table>
現(xiàn)在我們需要實(shí)現(xiàn)的是將原始表格復(fù)制一份并插入到頁(yè)面中。我們可以使用JavaScript的document.createElement()方法和appendChild()方法來(lái)實(shí)現(xiàn):
var originalTable = document.getElementById("original");
var newTable = document.createElement("table");
for (var i = 0; i< originalTable.rows.length; i++) {
var newRow = document.createElement("tr");
for (var j = 0; j< originalTable.rows[i].cells.length; j++) {
var newCell = document.createElement("td");
newCell.innerHTML = originalTable.rows[i].cells[j].innerHTML;
newRow.appendChild(newCell);
}
newTable.appendChild(newRow);
}
document.body.appendChild(newTable);
上面的代碼實(shí)現(xiàn)了將原始表格復(fù)制一份并插入到頁(yè)面的功能。我們可以在頁(yè)面中添加一個(gè)按鈕,當(dāng)用戶(hù)點(diǎn)擊按鈕時(shí)就執(zhí)行上面的代碼:
<button onclick="copyTable()">復(fù)制表格</button>
<script>
function copyTable() {
var originalTable = document.getElementById("original");
var newTable = document.createElement("table");
for (var i = 0; i < originalTable.rows.length; i++) {
var newRow = document.createElement("tr");
for (var j = 0; j < originalTable.rows[i].cells.length; j++) {
var newCell = document.createElement("td");
newCell.innerHTML = originalTable.rows[i].cells[j].innerHTML;
newRow.appendChild(newCell);
}
newTable.appendChild(newRow);
}
document.body.appendChild(newTable);
}
</script>
以上就是使用JavaScript復(fù)制表格的全部代碼。當(dāng)用戶(hù)在頁(yè)面中點(diǎn)擊按鈕時(shí),就會(huì)在頁(yè)面中復(fù)制一份原始表格。我們也可以通過(guò)修改上面的代碼來(lái)自定義復(fù)制后的表格樣式等。這樣可以更好地滿足我們?cè)跀?shù)據(jù)處理方面的需求。