Saya tahu ini akan datang terlambat tetapi bagi orang-orang yang ingin menerapkannya hanya dengan menggunakan JavaScript
, berikut ini cara melakukannya:
- Dapatkan referensi ke arus
tr
yang diklik.
- Buat
tr
elemen DOM baru .
- Tambahkan ke
tr
node induk yang dirujuk .
HTML:
<table>
<tr>
<td>
<button id="0" onclick="addRow()">Expand</button>
</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
</tr>
<tr>
<td>
<button id="1" onclick="addRow()">Expand</button>
</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
</tr>
<tr>
<td>
<button id="2" onclick="addRow()">Expand</button>
</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
<td>abc</td>
</tr>
Dalam JavaScript:
function addRow() {
var evt = event.srcElement.id;
var btn_clicked = document.getElementById(evt);
var tr_referred = btn_clicked.parentNode.parentNode;
var td = document.createElement('td');
td.innerHTML = 'abc';
var tr = document.createElement('tr');
tr.appendChild(td);
tr_referred.parentNode.insertBefore(tr, tr_referred.nextSibling);
return tr;
}
Ini akan menambahkan baris tabel baru tepat di bawah baris tempat tombol diklik.