• javascript实现全选反选操作并完成删除


      在管理系统中,我们常需要删除多个文件,然而一个一个删除对于大批量数据来说必然会给操作人员带来反感,所以有一个全选操作按钮是最好的选择,支持全选反选和多选删除,无疑给操作人员带来极大的方便,下面我来对前些天做的全选多选删除来做个总结,也希望帮助到需要这个操作的程序员们。

      下边的代码是javascript脚本,他的功能就是在勾选全选后,将所有name=id的checkbox的属性都设置为checked,这样就实现了全选(反选)的功能。脚本直接放到jsp页面即可:

    <script type="text/javascript">
         function checkAll(argu){
          var obj = document.getElementsByName("id"); 
            for(var i= 0;i<obj.length;i++){
                  obj[i].checked = argu.checked;
                }
         }
    </script>

    <
    td> <input name="id" type="checkbox" value="<%=news.getId() %>"><%=i %></td> <td> <input align="left" type="checkbox" name="checkBoxs" onclick="checkAll(this)" /> 全选(反选)
    // 此处的checkbox即为触发全选反选操作的勾选框,
    
    


      因为javascript中是通过name获得页面值,故checkbox的name值为javascript中对应的id,这样才可以获取到对应的内容,而checkbox的value为删除操作需要获得的id值,这样才能对应的删除数据库中的记录。通过javascript可以将所有选中的checkbox的值也就是对应数据库中的id值获取到,接下来的工作就是要将这些id值构成sql语句,执行删除操作。
      首先需要在servlet中将传入的所有id值接收,此过程需要把所有的id拼装成一个字符串,以便传入delete操作函数,此处使用的是简单的字符串链接操作(也可以使用append方法)
    String id[]=request.getParameterValues("id");
            String IdAll="";   
            if   (id!=null){
                for(int i=0;i<id.length;i++)
                {
                    IdAll=IdAll+id[i]+",";   
                    }   
                      IdAll=IdAll.substring(0,IdAll.length()-1);              
                              
                     System.out.println("IDAll-----"+IdAll);
                     FilesDownload.deleteFiles(IdAll);
            }
    
    

    下边是deleteFiles()方法:

    public static boolean deleteNews(String idAll){
            JDBCBean jdbc=new JDBCBean();
            String sql="delete from News where id in("+idAll+")";
            System.out.println(sql);
            int result=jdbc.executeUpdate(sql);
            boolean flag=false;
            if(result==1){
                flag=true;
            }
            return flag;
            
        }

    delete from table_name where id in(?,?,?,?,?……);可以实现多个记录删除,当选取一个时,也可以完成删除操作,这样全选多选删除操作就很方便的完成了。

                                    
     
     
    ------希望大家多多指教,欢迎转载,请注明出处,谢谢


  • 相关阅读:
    模拟城市:我是市长
    IOTA私有链简单搭建
    SOUL软件小结
    ubuntu 16.04 安装node.js 8.x
    Ubuntu下Hyperledger Fabric v0.6安装部署
    区块链关键术语与概念
    Windows Server 2019安装OpenSSH Server简明教程
    Windows10和Windows Server 2019支持OpenSSH
    TypeError: __init__() got an unexpected keyword argument 'serialized_options'
    无法从路径’NuGet.CommandLine.2.7.1.nupkg’读取包
  • 原文地址:https://www.cnblogs.com/mecca/p/3309683.html
Copyright © 2020-2023  润新知