滑動刪除按鈕 FOR GRIDVIEW
by wllai2001
HTML
<!---->
<table>
<tr>
<td>Title 1</td>
<td>Title 2</td>
</tr>
<tr>
<td>Row 1, Col 1</td>
<td>Row 1, Col 2</td>
</tr>
<tr>
<td>Row 2, Col 1</td>
<td>Row 2, Col 2</td>
</tr>
</table>
CSS
table {
border-collapse: collapse;
}
td {
border: 1px solid #ddd;
padding: 8px;
position: relative;
}
.delete-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(255, 0, 0, 0.8);
color: white;
display: flex;
justify-content: center;
align-items: center;
opacity: 0;
transition: opacity 0.3s;
}
td:hover .delete-overlay {
opacity: 1;
cursor: pointer;
}
JavaScript
document.addEventListener('DOMContentLoaded', function() {
var rows = document.querySelectorAll('table tr');
for (var i = 1; i < rows.length; i++) { // 跳过第一列(表头)
var cell = rows[i].querySelector('td:first-child'); // 每行的第一个TD
var overlay = document.createElement('div');
overlay.className = 'delete-overlay';
overlay.innerText = '刪除';
overlay.addEventListener('click', function() {
if (confirm('確定要刪除這個項目嗎?')) {
this.parentNode.parentNode.removeChild(this.parentNode);
}
});
cell.appendChild(overlay);
}
});