批量删除功能的实现

其实实现这个功能还是挺简单的 因为我这是直接拼接的,所以用了DOM方法来获取id
话不多说直接上代码
首先是复选框全选和反选
这里的话

获取最上面一个复选框的状态同步到拼接的复选框

 $("#check11").click(function () { var hz = $("#check11").prop("checked"); $(".qx").prop('checked',hz); }); 

直接看checkbox就好

  1. $.ajax({
  2. url: "/reader",
  3. type: "get",
  4. dataType: "json",
  5. success:function (result) {
  6. var dataTR = "";
  7. $.each(result, function (index, value) {
  8. dataTR +=
  9. "<tr>" +
  10. "<td>" + value.readerId + "</td>" +
  11. "<td>" + value.name + "</td>" +
  12. "<td>" + value.sex + "</td>" +
  13. "<td>" + value.birth + "</td>" +
  14. "<td>" + value.address + "</td>" +
  15. "<td>" + value.telcode + "</td>" +
  16. "<td>" +
  17. "<input type='checkbox' class='qx'> " +
  18. "</td>" +
  19. "</tr>";
  20. });
  21. $("#tbody").html(dataTR);
  22. }
  23. });

下面是ajax请求

  1. $("#delete").click(function () {
  2. var zhi = $('input:checkbox:checked');
  3. var id = '';
  4. var str = '';
  5. $.each(zhi,function(){
  6. id = this.parentNode.parentNode.firstChild.innerHTML;
  7. if(id!=null){
  8. str += id+",";
  9. }
  10. swal({
  11. title:"确定要删除这"+zhi.length+'个数据吗',
  12. showCancelButton: true,
  13. confirmButtonColor: "#DD6B55",
  14. confirmButtonText: "确定!",
  15. cancelButtonText: "取消!",
  16. closeOnConfirm: false,
  17. closeOnCancel: false
  18. },function (isConfirm) {
  19. var s = JSON.stringify(str);
  20. console.log(s);
  21. if(isConfirm){
  22. $.ajax({
  23. url:"/reader1",
  24. type:"post",
  25. dataType: "json",
  26. data:{"str":s},
  27. success:function (result) {
  28. if(result=="success"){
  29. swal('删除成功','','success');
  30. getAll();
  31. }else {
  32. swal("取消!", "停留在此页面", "info");
  33. }
  34. }
  35. });
  36. }else {
  37. swal("取消!", ", "info");
  38. }
  39. });
  40. });
  41. });

这里注意var定义一定要放在each方法的外部并且要给赋值’ ';不然的话JSON转换成字符串的时候会
为空

dao层

  int deleteByPrimaryKey(Integer readerId); 

Mapper

 <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer"> delete from reader_info where reader_id = #{readerId,jdbcType=INTEGER} </delete> 

service层

int deleteByPrimaryKey(Integer readerId);

impl

  1. package gentleman.service;
  2.  
  3. import gentleman.bean.User;
  4. import gentleman.dao.Userdao;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.stereotype.Service;
  7. import org.springframework.transaction.annotation.Transactional;
  8.  
  9. import java.util.List;
  10.  
  11. @Service
  12. @Transactional
  13. public class serviceimpl implements UserService {
  14.  
  15. @Autowired
  16. private Userdao userdao;
  17.  
  18. @Override
  19. public void deleteUserById(int id) throws Exception {
  20. userdao.deleteUserById(id);
  21. }
  22. }

Controller层

  1. package gentleman.Controller;
  2.  
  3. import com.alibaba.fastjson.JSON;
  4. import gentleman.service.reader_infoservice;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.stereotype.Controller;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.ResponseBody;
  9.  
  10. @Controller
  11. public class CountDown {
  12. @Autowired
  13. private reader_infoservice reader;
  14.  
  15. @RequestMapping("/reader1")
  16. @ResponseBody
  17. public String deleteByPrimaryKey(String str){
  18. String substring = str.substring(1,str.length()-1);
  19. String[] split = substring.split(",");
  20. try {
  21. for (int i = 0; i < split.length; i++) {
  22. reader.deleteByPrimaryKey(Integer.parseInt(split[i]));
  23. }
  24. return JSON.toJSONString("success");
  25. } catch (NumberFormatException e) {
  26. e.printStackTrace();
  27. return JSON.toJSONString("fail");
  28. }
  29. }
  30. }

这里需要注意的就是JSON传过来的字符串是"id,id,id"的形式,如果想转成int类型
需要先把第一个位置和最后一个位置上的双引号去掉;

SSM实现批量删除功能的更多相关文章

  1. 实例:SSH结合Easyui实现Datagrid的批量删除功能

    在我先前的基础上面添加批量删除功能.实现的效果如下 删除成功 通常情况下删除不应该真正删除,而是应该有一个标志flag,但flag=true表示状态可见,但flag=false表示状态不可见,为删除状 ...

  2. layui表格的批量删除功能

    // 批量删除功能 // 1.得到table选中行内容 // 2.得到删除需要的唯一值,一般是id; // 3.将所要删除的项加入到数组中: // 4.判断是否选中: // 5.发送ajax请求,并附 ...

  3. SSM + MySQL批量删除操作

    最近项目中有个购物车功能需要能够选中商品,然后批量删除的操作,也可以单个删除,其实代码很简单就能实现. 这里需要注意的就是你前端是怎么传值的,我这里采用的数组的形式,用 ‘,’隔开. 然后控制层代码如 ...

  4. ajax批量删除功能的实现源代码

    效果展示: 完整代码如下: <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charse ...

  5. checkbox批量删除功能

    参考:http://www.jb51.net/article/35338.htm 感谢作者 代码片段:jsp <c:forEach items="${infolist }" ...

  6. iOS开发:一个高仿美团的团购ipad客户端的设计和实现(功能:根据拼音进行检索并展示数据,离线缓存团购数据,浏览记录与收藏记录的批量删除等)

    大致花了一个月时间,利用各种空闲时间,将这个客户端实现了,在这里主要是想记录下,设计的大体思路以及实现过程中遇到的坑...... 这个项目的github地址:https://github.com/wz ...

  7. iOS开发——UI进阶篇(四)tableView的全局刷新,局部刷新,左滑操作,左滑出现更多按钮,进入编辑模式,批量删除,自定义批量删除

    首先创建项目,在storyboard如下布局控件,设置好约束 然后创建cell模型类XMGWineCell数据模型类XMGWine创建UITableView,设置数据源协议,实现数据源方法懒加载数据这 ...

  8. Android 长按Listview显示CheckBox,实现批量删除。

    ListView实现的列表,如果是可编辑,可删除的,一般都要提供批量删除功能,否则的话,一项一项的删除体验很不好,也给用户带来了很大的麻烦. 实现效果图 具体实现代码 select.xml 主布局文件 ...

  9. ajax“显示弹窗详情”和“删除”功能练习

    1.查看详细信息,以弹窗的形式显示,使用ajax 2.批量删除 “查询”功能可以参考前面的文章,这里只讲解ajax“显示弹窗详情”和“删除”功能 第一:在body中的代码 <title>a ...

随机推荐

  1. 安装yum仓库

    1.yum仓库是在系统镜像文件里,所以我们要安装yum仓库要把系统镜像文件添加进来: 2.进行挂载配置,并且要使配置永久生效,要进行配置: 3.接下来要创建yum仓库 配置文件: 总结:以上就是安装y ...

  2. 数据库管理工具navicat基本使用方法——以MySql为例

    mysq数据库管理工具navicat基本使用方法 https://www.cnblogs.com/neuedu/p/5876874.html

  3. freemarker模板跟java代码放在一起

    在配置 freemarkerConfig时加上 <property name="templateLoaderPath" value="classpath:hello ...

  4. python3入门之集合set

    之前介绍python的数据结构时,没有介绍set(集合)现在在这里稍微介绍下: set原理 Python 还 包 含 了 一 个 数 据 类 型-- set ( 集 合 ) . 集 合 是 一 个 无 ...

  5. java 优秀文章集锦

    一个简易的静态网页服务器  https://www.cnblogs.com/longfurcat/p/10355514.html   浅析Servlet执行原理   https://www.cnblo ...

  6. P1158 导弹拦截

    P1158 导弹拦截 思路: 按每个点到第一个系统的距离排序,然后预处理出每个点及其之后的点到第二个系统的距离的最大值,再循环一遍枚举答案.  代码: #include <cstdio> ...

  7. L01-RHEL6.5中部署NTP(ntp server + client)

    RHEL6.5集群中部署NTP NTP全称为Network Time Protocol,即网络时间协议.一般在Linux系统中用来同步集群中不同机器的时间. 本文描述的ntp服务部署框架如下图示 如上 ...

  8. 洛谷P5156 [USACO18DEC]Sort It Out

    这题就是让你求字典序第k小的最短乱序子序列 转换一下,其实就是字典序第k大的最长上升子序列 就统计一下以i结尾的最长上升子序列\(f[i]\),长度为i的上升子序列的开头组成的集合\(v[i]\),转 ...

  9. vue源码-检查对象是否全相等

    /** * Check if two values are loosely equal - that is, * if they are plain objects, do they have the ...

  10. mac 上安装vue模版-D2 Admin

    1.首先下拉模版,打开mac自带“终端” 2.安装项目 3.出现的错误 4.启动项目