springMVC回收站多选(checkbox)删除

202 篇文章 1 订阅

1、js代码:
 

<% 
// 根路径取得
String root = request.getContextPath();
//删除按钮调用路径
String deleteAction = root + "/b019/b019001/deleteAll.go";
%>
<form action="">
	<input type="checkbox" name="selectall2" id='x'/><label for="x">一键全选</label><button onclick="batchDeletes()">删除</button><br>
	<input type="checkbox" name="stuCheckBox" value="sn1">我有一辆自行车<br>
	<input type="checkbox" name="stuCheckBox" value="sn2">我有一辆汽车<br>
	<input type="checkbox" name="stuCheckBox" value="sn3">我有一架飞机<br>
</form>

<script>
		//$('input[name="selectall2"]').click(function(){
		//$('input[name="selectall2"]').bind("change",function(){
		$('input[name="selectall2"]').on("click",function(){
			alert(this.checked);
			if($(this).is(':checked')){
				$('input[name="stuCheckBox"]').each(function(){
					//此处如果用attr,会出现第三次失效的情况
					$(this).prop("checked",true);
				});
			}else{
				$('input[name="stuCheckBox"]').each(function(){
					$(this).removeAttr("checked",false);
					//$(this).removeAttr("checked");
				});

			}		
		});

		function batchDeletes(){
			//判断至少写了一项
			var checkedNum = $("input[name='stuCheckBox']:checked").length;
			if(checkedNum==0){
				alert("请至少选择一项!");
				return false;
			}
			if(confirm("确定删除所选项目?")){
				var checkedList = new Array();
				$("input[name='stuCheckBox']:checked").each(function(){
					alert($(this).val());
					checkedList.push($(this).val());
				});
					alert(checkedList.toString());
				$.ajax({
					type:"POST",
					url:'<%=deleteAction%>',
					data:{"delitems":checkedList.toString()},
					datatype:"html",
					success:function(data){
						$("[name='selectall2']:checkbox").attr("checked",false);
						location.reload();//页面刷新,或者表单提交
					},
					error:function(data){
						art.dialog.tips('删除失败!');
					}
				});
			}
		}

// 未验证可用与否一:
$(".del_goods").click(function(){
        //删除选中的商品
        var clear_data = {};//对象
        $("input[name='checkShop[]']:checked").each(function(i){
            clear_data[i] = $(this).val();
        });

      clear_data = JSON.stringify(clear_data);//把对象转换成json
		      console.log({clear_data}
         $.ajax({
             type: 'post',
             url: '/wechat.php/Cart/delCart/t/',
            data: clear_data,//直接传递json。
             //dataType: 'json',
             success: function(jsonData) {
                alert(jsonData);
                 /*if(jsonData.errmsg === 'ok') {
                     $("input[name='checkShop[]:checked']").each(function(){
                        $(this).parent().parent("li").remove();
                    })
                 }*/
             }
         })
    })

//未验证可用与否er:
$(".del_goods").click(function(){
        //删除选中的商品
        var clear_data = [];//数组
        $("input[name='checkShop[]']:checked").each(function(i){
            clear_data[i] = $(this).val();
        });
         $.ajax({
             type: 'post',
             url: '/wechat.php/Cart/delCart/t/',
            data: {ids:clear_data},//因为ajax是要传递的json格式的,但是我们需要传递过去的是数组,所以把整个数组当成json的一个key的数值传递过去,ids就是一个key。如果只传{clear_data},那么传递过去的key就是clear_data。
             //dataType: 'json',
             success: function(jsonData) {
                alert(jsonData);
                 /*if(jsonData.errmsg === 'ok') {
                     $("input[name='checkShop[]:checked']").each(function(){
                        $(this).parent().parent("li").remove();
                    })
                 }*/
             }
         })
    })
	</script>

2、controller写法:

@RequestMapping("/deleteAll.do")
@ResponseBody()
public void batchDeletes(HttpServletRequest request, HttpServletResponse response) {
	String items = request.getParameter("delitems");// System.out.println(items);
	String[] strs = items.split(",");
	for (int i = 0; i < strs.length; i++) {
		try {
			// int a = Integer.parseInt(strs[i]);
			String a = strs[i];			
			persistService.delStudentBySn(a);
		} catch (Exception e) {

			}

		}

	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值