批量删除功能的实现

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

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

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

直接看checkbox就好

    $.ajax({
url: "/reader",
type: "get",
dataType: "json",
success:function (result) {
var dataTR = "";
$.each(result, function (index, value) {
dataTR +=
"<tr>" +
"<td>" + value.readerId + "</td>" +
"<td>" + value.name + "</td>" +
"<td>" + value.sex + "</td>" +
"<td>" + value.birth + "</td>" +
"<td>" + value.address + "</td>" +
"<td>" + value.telcode + "</td>" +
"<td>" +
"<input type='checkbox' class='qx'> " +
"</td>" +
"</tr>";
});
$("#tbody").html(dataTR);
}
});

下面是ajax请求

 $("#delete").click(function () {
var zhi = $('input:checkbox:checked');
var id = '';
var str = '';
$.each(zhi,function(){
id = this.parentNode.parentNode.firstChild.innerHTML;
if(id!=null){
str += id+",";
}
swal({
title:"确定要删除这"+zhi.length+'个数据吗',
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "确定!",
cancelButtonText: "取消!",
closeOnConfirm: false,
closeOnCancel: false
},function (isConfirm) {
var s = JSON.stringify(str);
console.log(s);
if(isConfirm){
$.ajax({
url:"/reader1",
type:"post",
dataType: "json",
data:{"str":s},
success:function (result) {
if(result=="success"){
swal('删除成功','','success');
getAll();
}else {
swal("取消!", "停留在此页面", "info");
}
}
});
}else {
swal("取消!", ", "info");
}
});
});
});

这里注意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

 package gentleman.service;

 import gentleman.bean.User;
import gentleman.dao.Userdao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service
@Transactional
public class serviceimpl implements UserService { @Autowired
private Userdao userdao; @Override
public void deleteUserById(int id) throws Exception {
userdao.deleteUserById(id);
}
}

Controller层

 package gentleman.Controller;

 import com.alibaba.fastjson.JSON;
import gentleman.service.reader_infoservice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; @Controller
public class CountDown {
@Autowired
private reader_infoservice reader; @RequestMapping("/reader1")
@ResponseBody
public String deleteByPrimaryKey(String str){
String substring = str.substring(1,str.length()-1);
String[] split = substring.split(",");
try {
for (int i = 0; i < split.length; i++) {
reader.deleteByPrimaryKey(Integer.parseInt(split[i]));
}
return JSON.toJSONString("success");
} catch (NumberFormatException e) {
e.printStackTrace();
return JSON.toJSONString("fail");
}
}
}

这里需要注意的就是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. link和@import的区别是什么 ?

    1.link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务:@import属于CSS范畴,只能加载CSS. 2.link引入CSS是,在页面载入时间同时加载:@import页面网页完全 ...

  2. scrapy框架基于CrawlSpider的全站数据爬取

    引入 提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法? 方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调parse方法). 方法 ...

  3. ArchLinux中证书错误解决方案

    ca-certificates 更新 x509: failed to load system roots and no roots provided. curl error: Problem with ...

  4. ubuntu14.04安装zabbix

    1. apt-get updateapt-get install apache2 mysql-server libapache2-mod-php5 php5-gd php5-mysql php5-co ...

  5. fdisk 和 parted 分区工具

    fdisk 和 parted: fdisk 是用来对 Linux 下的 MBR 分区进行操作的一款分区工具, 由于 MBR 的设计缺陷导致 MBR 不能处理大于 2TB 的硬盘, 并且主分区个数不能超 ...

  6. esp_err_t esp_event_loop_init(system_event_cb_t cb, void *ctx);

    esp_err_t esp_event_loop_init(system_event_cb_t cb, void *ctx){ if (s_event_init_flag) { return ESP_ ...

  7. 2016级算法第四次上机-D.AlvinZH的1021实验plus

    978 AlvinZH的1021实验plus 思路 贪心,中等题. 使用miss变量表示未覆盖的最小数字,初始值为1. 初始覆盖区间为[1,miss),目标是覆盖[1,m],即miss需要大于m. 需 ...

  8. MODBUS协议相关代码(CRC验证 客户端程序)

    Modbus协议是一种已广泛应用于当今工业控制领域的通用通讯协议.通过此协议,控制器相互之间.或控制器经由网络(如以太网)可以和其它设备之间进行通信.Modbus协议使用的是主从通讯技术,即由主设备主 ...

  9. 剑指offer——面试题18.1:删除链表中重复的节点

    // 面试题18(二):删除链表中重复的结点 // 题目:在一个排序的链表中,如何删除重复的结点?例如,在图3.4(a)中重复 // 结点被删除之后,链表如图3.4(b)所示. #include &l ...

  10. axios简单介绍

    axios的配置,get,post,axiso的同步问题解决 一.缘由 vue-resoure不更新维护,vue团队建议使用axios. 二.axios安装 1.利用npm安装npm install ...