springMVC的批量删除

在这里首先用2中方法来写一下。

HTML:这里是一个jstl 的一个for循环

  

方法一   js  :这是我自己想到的一个 方法!

function deleteAll(){
        var obj=document.getElementsByName("getByName");
        var checkval = new Array();    
    if(confirm("确定要删除吗!")){
            for(var i=0;i<obj.length;i++){
                if(obj[i].checked){
                    checkval+=obj[i].value+",";
                }
                }
            }
------------------------------最近知道的一个简单办法如图下:------------------------------------------

我们这里得到idsStr就是(1,2,3,4)这样的id

---------------------------------------------------------------------------


    $.post("deleteAll",{checkval:checkval.toString()},function (date){   
         if (false == date) {
                alert("please try connecting later!");
            } else {
                alert("删除成功!");
                window.location.href=window.location.href;
            }    
        
    })
    }

首先这边取到的值是 1,2,3,4,5,6,    末尾多了个逗号,没事到前台去掉就ok了。

后台Controller:

      //删除单个或者多个
    @RequestMapping("deleteAll")
    public String deleteAll(String checkval){    
        customerGroupsService.deleteAll(checkval);        
    return "redirect:CustomerGroups";

  service层:对数据进去修改,用String的subsstring去掉最后一个逗号

        public void deleteAll(String checkval) {
        String id=checkval.substring(0, checkval.length()-1);
        customerGroupsDao.deleteAll(id);
        
    }

Dao层:我们可以发现 Dao 中所需要的条件就是  前台传来的

      public void deleteAll(String id) {
    String hql="delete from CustomerGroups where FCGROUPID in("+id+")";
    Query query=this.getSession().createQuery(hql);
    query.executeUpdate();

方法二:js:这里取到的 数据是1,2,3,4,5,6   就不需要去更改了

var obj=document.getElementsByName("getByName");
        var checkval = new Array();    
              for(k in obj){
                    if(obj[k].checked)
                        checkval.push(obj[k].value);
                }
                if(checkval.length==0){
                   alert("请选择至少一条数据");
                   return;
                }else{
                    if(confirm("确定要删除吗!")){
                        $.post("deleteAll",{checkval:checkval.toString()},function (date){    
                             if (false == date) {
                                    alert("please try connecting later!");
                                } else {
                                    alert("删除成功!");
                                    window.location.href=window.location.href;
                                }    
                        })    
                    }    
                }

后台Controller:通上个Controller

Serivce  :

    public void deleteAll(String checkval) {

        customerGroupsDao.deleteAll(checkval);
        
    }

Dao  : 不变。

 

posted on 2016-01-19 09:18  浅笑灬  阅读(2756)  评论(0编辑  收藏  举报

导航