我想删除表行,数据从数据库中删除,但为什么不从html表中删除数据。 任何解决方案表示赞赏!
Book stock("...", &author, 4.99);
这是使用PHP生成的HTML表
$('#datatables').on('click', '.delete_department', (e) => {
var id = e.currentTarget.id;
$.ajax({
type: 'POST',
url: BASE_URL + 'admin/delete_department',
data: { id: id },
success: (response) => {
$('#datatables').closest('tr').remove();
}
});
});
答案 0 :(得分:1)
保存单击的按钮元素的引用,然后使用closest
获取tr
。
$('#datatables').on('click', '.delete_department', function(e) {
const that = $(this);
var id = e.currentTarget.id;
$.ajax({
type: 'POST',
url: BASE_URL + 'admin/delete_department',
data: { id: id }, // or just use shorthand notation { id }
success: (response) => {
$(that).closest('tr').remove();
}
});
});
注意-使用function()
而不是箭头功能来获取所单击元素的引用。
答案 1 :(得分:0)
尝试使用row().remove()
var datatable = $('#datatables').DataTable({ ... });
$('#datatables').on('click', '.delete_department', (e) => {
var id = e.currentTarget.id;
var tr = this;
$.ajax({
type: 'POST',
url: BASE_URL + 'admin/delete_department',
data: { id: id },
success: (response) => {
$('#datatables').closest('tr').remove();
datatable.row( $(tr).parents('tr') ).remove().draw();
}
});
});
答案 2 :(得分:0)
让_this = $(this); 在上面声明 var id = e.currentTarget.id;
并在成功功能中设置在行下方 _this.parent('tr')。remove();
并将成功用作函数成功:函数(响应){