mapper
int deleteById(Integer id);
xml
<!--按条件删除-->
<delete id="deleteById" parameterType="int">
delete from purchase where id =#{id}
</delete>
service
/**
* 删除
*/
int deleteById(Integer id);
/**
* 批量删除
* @param ids
* @return
*/
boolean deleteByIds(int[] ids);
BookController
/*----------------------------------删除---------------------------------------*/
@PostMapping("/del")
@ResponseBody
public int del(@RequestBody Integer id){
return bookService.deleteById(id);
}
/*------------------------批量删除---------------------------------------------------*/
@PostMapping("/delall")
@ResponseBody
public int deletes(@RequestBody Book[] book){
for (int i = 0; i <book.length ; i++) {
bookService.deleteById(book[i].getId());
}
return 0;
前端
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Title</title>
<script src="${pageContext.request.contextPath}/js/jquery-3.4.1.min.js"></script>
<script>
function btn1(obj,id){//id为取到的行id
var r=confirm("是否确认删除?");
if(r==true){
//确定执行删除
var id = id;
$.post({
data:id,
type:'post',
contentType:"application/json;charset=UTF-8",
url : '${pageContext.request.contextPath }/del',
dataType : 'json',
success : function(data) {
if(data){
alert("删除成功!");
//删除成功后,刷新页面信息
location.reload();
}else{
alert("删除失败!!");
}
},
});
return true;
}else{
//反之取消删除
return false;
}
}
//复选框全部选中
$(function(){
$('#selectall').click(function(){
var flag=$(this).is(':checked');
var checks=$('input[name="checktest"]');
$.each(checks,function(){
$(this).prop('checked',flag); //注意attr只能使用一次,第二次勾不管用。prop随时管用。
})
})
})
</script>
<script>
/*封面图-批量删除*/
//批量删除
function deletes(obj){
var str1=new Array();
$.each($('input:checkbox:checked'),function(){
var data1={"id":$(this).val()};
str1.push(data1);
});
console.log(str1);
if (str1.length == 0)
return false;
if(confirm("确定删除吗?")){
debugger
$.ajax({
type: 'post',
url: '${pageContext.request.contextPath }/delall',
data:JSON.stringify(str1),
contentType:"application/json;charset:UTF-8",
success: function(data){
if(data==0){
alert("批量删除成功");
//parent.window.location.reload();
}
}
});
return true;
}else {
return false;
}
}
</script>
</head>
<body>
<form action="/list" method="post">
id:<input type="text" value="${book.id}" name="id" id="id">
name:<input type="text" value="${book.name}" name="name" id="name">
data:<input type="text" value="${book.date}" name="date" id="date">
<%--<button id="btn1">搜索</button>--%>
<input type="submit" value="搜索"/>
</form>
<a href="list">查看</a>
<a title="批量删除" href="javascript:;" onclick="deletes(this,'${s.id}')">批量删除</a>
<a href="/add.jsp">添加</a>
<table id="dataTable">
<tr>
<%-- <th>循环次数</th>--%>
<th width="100"><input type="checkbox" name="" value="" id="selectall"></th>
<th width="100">id</th>
<th width="100">name</th>
<th width="100">date</th>
<th width="100">操作</th>
</tr>
<c:forEach items="${pageInfo.list}" var="s" varStatus="stat">
<tr style="text-align: center"><%--居中--%>
<td ><input type="checkbox" value="${s.id}" name="checktest"></td>
<td value="list[${a.index }].id">${s.id }</td>
<%-- <td>${s.id}</td>--%>
<td>${s.name}</td>
<td>${s.date}</td>
<td><a title="删除" href="javascript:;" onclick="btn1(this,'${s.id}')">删除</a>
<%-- <td ><input type="checkbox" value="${s.id}" name="checktest" varStatus="a" value="user[${a.index }].id"></td>--%>
<a href="/selectById?id=${s.id}">修改</a></td>
</tr>
</c:forEach>
<tr>
<td><span>第${pageInfo.pageNum}页/共${pageInfo.pages}页</span></td>
<td><a href="list?pageNum=0">首页</a>
<a href="list?pageNum=${pageInfo.total}&name=${book.name}&id=${book.id}&date=${book.date}">尾页</a></td>
<td>总共:${pageInfo.total}条记录</td>
<div id="inputdiv">
<a href="list?pageNum=${pageInfo.pageNum-1}&name=${book.name}&id=${book.id}&date=${book.date}">上一页</a>
<a href="list?pageNum=${pageInfo.pageNum+1}&name=${book.name}&id=${book.id}&date=${book.date}">下一页</a>
</div>
</tr>
<tr>
<td><c:forEach items="${pageInfo.navigatepageNums}" var="num">
<c:if test="${num==pageInfo.pageNum}">
【${num}】
</c:if>
<c:if test="${num!=pageInfo.pageNum}">
<a href="list?pageNum=${num}">${num}</a>
</c:if>
</c:forEach>
</td>
</tr>
共有<strong id="show_num">${pageInfo.total}</strong>条数据
</table>
</body>
</html>