Tôi biết nó đến muộn nhưng đối với những người muốn triển khai nó hoàn toàn bằng cách sử dụng JavaScript
, đây là cách bạn có thể làm điều đó:
- Lấy tham chiếu đến hiện tại
tr
được nhấp vào.
- Tạo một cái mới
tr
phần tử DOM .
- Thêm nó vào
tr
nút cha được giới thiệu .
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>
Trong 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;
}
Thao tác này sẽ thêm hàng bảng mới chính xác bên dưới hàng mà nút được nhấp vào.