每行首列放 ``,刪除按鈕提交表單至 Servlet/Controller,後端接收 `ids` 陣列批次刪除。
<%@ taglib prefix="c" uri="https://java.sun.com/jsp/jstl/core" %>
@WebServlet("/DeleteServlet")
public class DeleteServlet extends HttpServlet {
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String[] ids = req.getParameterValues("ids");
if (ids != null && ids.length > 0) {
userService.deleteByIds(Arrays.asList(ids)); // 批次刪除
}
resp.sendRedirect("list.jsp"); // 重導向列表頁
}
}
$("#btnDelete").click(function() {
var ids = $("input[name='ids']:checked").map(function(){ return this.value; }).get();
if (ids.length === 0) return alert("請選擇");
$.post("DeleteServlet", { ids: ids.join(",") }, function(res) {
if (res.success) {
$("input[name='ids']:checked").closest("tr").fadeOut(); // 前端移除行
}
}, "json");
});
要點:Checkbox value 綁定主鍵 ID,後端接收陣列/逗號字串批次刪除,前端可配合全選/反選、AJAX 刷新。