JAVAWeb列表数据批量删除思路及实现
2020-04-01 19:04
1136 查看
个人博客地址https://nfreak-man.cn
带复选框 checkbox 的列表要实现批量删除的功能,首先要获取被选中的信息的全部 id,可以把该列表放入一个 form 表单中,以获取表单信息的方式获取全部 id,然后遍历 id,循环删除所有信息。
列表形式:
获取列表选中信息 id
把 table 放入 form表单,并把复选框 checkbox 的 value 值设置为 id:
<form id="form1" action="${pageContext.request.contextPath}/delSelectedServlet" method="post"> <table border="1" class="table table-bordered table-hover"> <tr class="success"> <th><input type="checkbox" id="firstCb"></th> <th>编号</th> <th>姓名</th> <th>性别</th> <th>年龄</th> <th>籍贯</th> <th>QQ</th> <th>邮箱</th> <th>操作</th> </tr> <c:forEach items="${users}" var="user" varStatus="s"> <tr> <th><input type="checkbox" name="uid" value="${user.id}"></th> <td>${s.count}</td> <td>${user.name}</td> <td>${user.gender}</td> <td>${user.age}</td> <td>${user.address}</td> <td>${user.qq}</td> <td>${user.email}</td> <td><a class="btn btn-default btn-sm" href="${pageContext.request.contextPath}/findUserServlet?id=${user.id}">修改</a> <a class="btn btn-default btn-sm" href="javascript:deleteUser(${user.id});">删除</a></td> </tr> </c:forEach> </table> </form>
点击删除按钮提交表单,获取 id
按钮:
<a class="btn btn-primary" href="javascript:void(0);" id="delSelected" >删除选中</a>
js代码:
window.onload = function(){ document.getElementById("delSelected").onclick = function(){ if(confirm("您确定要删除选中信息吗?")){ var flag = false; //判断是否有选中条目 var cbs = document.getElementsByName("uid"); for (var i = 0; i < cbs.length; i++) { if(cbs[i].checked){ flag = true; break; } } if(flag){ document.getElementById("form1").submit(); } } } //获取第一个checkbox document.getElementById("firstCb").onclick = function(){ //获取下摆你列表中所有cd var cbs = document.getElementsByName("uid"); //遍历 for (var i = 0; i < cbs.length; i++) { //设置cbs[]的check状态 = firstCb.checked cbs[i].checked = this.checked; } } }
DelSelectedServlet
@WebServlet("/delSelectedServlet") public class DelSelectedServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //获取所有id String[] ids = request.getParameterValues("uid"); //调用service删除 UserSvice service = new UserServiceImpl(); service.delSelectedUser(ids); //跳转查询所有servlet response.sendRedirect(request.getContextPath()+"/userListServlet"); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } }
Service 方法
@Override public void delSelectedUser(String[] ids) { //遍历数组 for (String id : ids) { //调用dao删除 dao.delete(Integer.parseInt(id)); } }
dao方法
@Override public void delete(int id) { //定义sql String sql = "delete from user where id = ?"; //执行sql template.update(sql,id); } l String sql = "delete from user where id = ?"; //执行sql template.update(sql,id); }
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- EntityFramework:支持同一事务提交的批量删除数据实现思路
- EntityFramework:支持同一事务提交的批量删除数据实现思路
- MVC3学习第八章 葵花点穴手之指如疾风----MVC3下实现数据的批量删除和利用EF初始化我们的数据
- jquery ajax实现批量删除具体思路及代码
- 使用easyui实现列表的批量删除
- EF结合SqlBulkCopy实现高效的批量数据插入 |EF插件EntityFramework.Extended实现批量更新和删除
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除)
- php+mysqli实现批量执行插入、更新及删除数据的方法
- AngularJS实现数据列表的增加、删除和上移下移等功能实例
- SSM框架实现前台复选框选中数据,后台实现批量修改删除
- JS调用C#后台代码---JS实现DataGrid“全选”、“反选”、调用后台代码批量删除数据
- jquery ajax实现批量删除具体思路及代码
- php+mysqli实现批量执行插入、更新及删除数据的方法
- 在ASP.NET 2.0中操作数据之六十三:GridView实现批量删除数据
- js操作cookie以实验array数据在ajax向action交换数据时得到保存,用于实现批量删除的工作(未完)
- Spring框架开发实现对商品列表的增删改查以及批量删除和批量修改
- php+apache实现音乐列表的增加,php(通过?传的参数删除数据)实现删除
- 实现项目里面的批量删除数据
- 用in关键字实现数据的批量删除