阿佛技术博客

.NET Windows Mobile etc.

用户操作
[即时聊天] [发私信] [加为好友]
patriot074(阿佛)ID:patriot074
17191次访问,排名7465(1),好友4人,关注者30人。
ASP.NET Mobile
JSP
Delphi
patriot074的文章
原创 49 篇
翻译 11 篇
转载 8 篇
评论 44 篇
patriot074(阿佛)的公告
分享心得,共同进步!
最近评论
呵呵:代码很不错!!
呵呵:代码很不错!!
呵呵:代码很不错!!
zuzuzuu:不错,参考了一下,自己写了一个!
only_endure:if object_id('tb') is not null and...
文章分类
收藏
    相册
    我的照片
    存档
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 批量删除(JSP ASP .NET)收藏

    新一篇: HTML JS 运行测试小工具 | 旧一篇: delphi调用Tomcat批处理startup.bat(界面隐藏)

    虽然这个例子是jsp,但是即使用.net或其他语言开发时原理也一样,稍微改动一下就可以了

    批量删除前台页面是使用一个 复选框

    <input type="checkbox" name="batDel" value="<%=ID1%>" > 删除选定

    <input type="submit" class="del" onClick="javascript:goto()" value="删除">删除按钮

    function goto(){
     FormEdit.action="louHaoBatDel.jsp";//这里是指定处理所在页面
     FormEdit.submit();
     
    }

    注意这里的"<%=ID1%>"是你要删除记录所在行的ID(主键)

    一般是通过循环输出若干个项在页面上,把上面的复选框代码放置其中,就可以在每个项中都添加复选框。因为我的项目代码行较多,所以这里给出这个提示,不贴出来了。

    接着是后台处理页面louHaoBatDel.jsp,我把代码直接写在页面上了(因为比较简单,就不通过servlet封装在类)

    注意:后台代码我通过自己封装的数据库操作包,大家需要自己更改成纯JDBC方式调用存储过程

    <%@ page contentType="text/html; charset=gb2312" language="java"
        
    import="java.sql.*" import="java.util.regex.*" import="search.db.*"
        errorPage
    =""%>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>批量删除后台处理页面/title>
    </head>

    <body>
    <% 
       request.setCharacterEncoding(
    "gb2312");
       String[]   values   
    =   request.getParameterValues("batDel");
       String  arrID
    ="";//包含要删除的ID,格式 1,3,4,2,5,323
       if((values==null)||("".equals(values)))//当未选定时不执行任何操作
       {
         response.sendRedirect(
    "lhglIframe.jsp");
       }

       
    else
       
    {  
       
    for(int i=0;i<values.length;i++)
       
    {
            arrID
    +=values[i]+",";
       }

      
    //out.print(arrID);
      String procName="kf.P_BatchDelFloorModel";
      proc pr
    =new proc();
      pr.setProcname(procName);
      pr.addParam(
    "@arrID",param.TYPE_VARCHAR2,arrID,param.IN);
      
      
    if(pr.execute())
      
    {
          out.print(
    "<script>alert('批量删除成功')</script>");
          response.sendRedirect(
    "lhglIframe.jsp");
      }

      
    else
      
    {
          out.print(
    "<script>alert('批量删除失败')</script>");
      }

      }

      
    %>

    </body>

    </html>

     最后存储过程非常简单:

     

    /*
    * @Tabel:kanfang360.FloorModel
    *`@author:Linc
    * @Time:2008.5.27.8:20
    * @Func:Batch delete
    * @iuput para format: 1,2,3,4 
    */

    CREATE proc kf.P_BatchDelFloorModel
    @arrID varchar(8000)

    as

    delete from kanfang360.FloorModel where ','+@arrID LIKE ',%'+cast([ID] as varchar)+',%'


    --exec kf.P_BatchDelFloorModel '1,2,3,11'
    --
    select * from kanfang360.FloorModel

    GO

    发表于 @ 2008年05月27日 09:31:59|评论(loading...)|编辑

    新一篇: HTML JS 运行测试小工具 | 旧一篇: delphi调用Tomcat批处理startup.bat(界面隐藏)

    评论

    #duner 发表于2008-05-27 11:28:52  IP: 219.238.185.*
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © patriot074(阿佛)