function renderData() { let tbody = document.querySelector('tbody'); tbody.innerHTML = ''; contacts.forEach((contact, index) => { let tr = document.createElement('tr'); tr.innerHTML = <td>${contact.name}</td> <td>${contact.phone}</td> <td>${contact.email}</td> <td> <button class="edit-btn" data-index="${index}">编辑</button> <button class="delete-btn" data-index="${index}">删除</button> </td> ; tbody.appendChild(tr); }); }帮我添加一个确认是否删除的提示,一次删除一条,不会删除其他数据
时间: 2023-07-15 21:10:01 浏览: 114
好的,你可以尝试如下代码实现:
```
function renderData() {
let tbody = document.querySelector('tbody');
tbody.innerHTML = '';
contacts.forEach((contact, index) => {
let tr = document.createElement('tr');
tr.innerHTML = `
<td>${contact.name}</td>
<td>${contact.phone}</td>
<td>${contact.email}</td>
<td>
<button class="edit-btn" data-index="${index}">编辑</button>
<button class="delete-btn" data-index="${index}">删除</button>
</td>
`;
tbody.appendChild(tr);
});
// 添加确认删除提示
let deleteBtns = document.querySelectorAll('.delete-btn');
deleteBtns.forEach((btn) => {
btn.addEventListener('click', (e) => {
let confirmDelete = confirm('确定要删除这条数据吗?');
if (confirmDelete) {
let index = e.target.getAttribute('data-index');
contacts.splice(index, 1);
renderData();
}
});
});
}
```
在这个代码中,我们添加了一个 `confirmDelete` 的变量,当用户点击删除按钮时,会弹出一个确认删除的提示框,如果用户点击确定,则会执行删除操作,否则不会进行任何操作。同时,我们也将确认删除的逻辑添加到了 `renderData` 函数中,这样每次更新数据时都会重新绑定事件,以确保事件绑定的正确性。
阅读全文