基于SSM框架的批量删除的前台+后台实现

本文介绍了一个使用HTML、JavaScript及后端技术实现的员工信息管理功能,重点在于批量删除操作的实现过程。从前端界面设计到后端逻辑处理,详细展示了如何通过复选框选择多个员工记录,并通过Ajax技术向后端发送请求进行批量删除。

前台页面:

前台代码:

<table width="100%" border="1" cellpadding="5" cellspacing="0" style="border:#c2c6cc 1px solid; border-collapse:collapse;">
    <tr class="main_trbg_tit" align="center">
        <td><input type="checkbox" name="checkAll" id="checkAll"></td>
        <td>姓名</td>
        <td>性别</td>
    </tr>
    <c:forEach items="${requestScope.employees}" var="employee" varStatus="stat">
        <tr id="data_${stat.index}" class="main_trbg" align="center">
            <td> <input type="checkbox" id="box_${stat.index}" value="${employee.id}"> </td>
	    <td> ${employee.name } </td>
	    <td>
                <c:choose>
                    <c:when test="${employee.sex == 1 }">男</c:when>
		    <c:otherwise>女</c:otherwise>
                </c:choose> </td>
        </tr>
    </c:forEach>
</table>
JS代码:
<script type="text/javascript">
	       $(function(){
	    	   /** 获取所有的单选框 */
	    	   var boxs  = $("input[type='checkbox'][id^='box_']");
	    	   
	    	   /** 给全选按钮绑定点击事件  */
		    	$("#checkAll").click(function(){
		    		// 所有数据行的选中状态与全选的状态一致
		    		boxs.attr("checked",this.checked);
		    	})
		  	
	    	   /** 删除员工绑定点击事件 */
	    	   $("#delete").click(function(){
	    		   /** 获取到用户选中的复选框  */
	    		   var checkedBoxs = boxs.filter(":checked");
	    		   if(checkedBoxs.length < 1){
	    			   $.ligerDialog.error("请选择至少一个需要删除的员工!");
	    		   }else{
	    			   /** 得到用户选中的所有的需要删除的ids */
	    			   var ids = checkedBoxs.map(function(){
	    				   return this.value;
	    			   })
	    			   
	    			   $.ligerDialog.confirm("确认要删除吗?","删除员工",function(r){
	    				   if(r){
	    					   // 发送请求
	    					   window.location = "${pageContext.request.contextPath}/employee/removeEmployee.do?ids=" + ids.get();
	    				   }
	    			   });
	    		   }
	    	   })
	       })
</script>

后台代码:

	@RequestMapping("/removeEmployee.do")
	public String removeEmployee(Integer[] ids, Model model){
		
		int rows = employeeService.removeEmployee(ids);
		if(rows > 0){
			return "redirect:/employee/findEmployee.do";
		} else {
			model.addAttribute("failMSG", "删除员工失败!");
			return "/jsp/fail.jsp";
		}
	}

这里可以用Integer[]类型将接收,也可以用string接收。

Dao层实现(sql):

	<delete id="deleteEmployee">
		delete from employee_inf where id in
		<foreach collection="ids" item="id" open="(" close=")" separator=",">
			#{id}
		</foreach>
	</delete>


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值