.net常用技能之:批量删除

本文介绍了一个ASP.NET项目中GridView控件配合复选框进行全选、反选及删除操作的方法,并展示了实现这些功能的具体JavaScript和C#代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码是参照周公-周金桥大哥在优快云上的教学源码。

自己对部分稍微做了修改,算作自己的一学习成果。记录在案。

 

ExpandedBlockStart.gif代码
 1 <script language="javascript" type="text/javascript">
 2     var checkbox;
 3     function SelectAllOrReverse()
 4     {
 5         checkbox=document.all.ChkBoxGroup;
 6         var chkSelect=document.getElementById("ChkSelectAll");
 7         if(checkbox!=null)
 8         {
 9             if(checkbox.length+" "!="undefined")
10             {
11                 for(var i=0;i<checkbox.length;i++)
12                 {
13                     //将源码修改为三元判断
14                        //减少代码体积
15                     chkSelect.checked==true?checkbox[i].checked=true:checkbox[i].checked=false;
16                 } 
17             }
18             else
19             {
20                 return false;
21             }
22         }
23         else
24         {
25             return false;
26         }
27     }
28     
29     function ReverseSelected()
30     {
31         checkbox=document.all.ChkBoxGroup;
32         if(checkbox!=null)
33         {
34             if(checkbox.length+" "!="undefined")
35             {
36                 for(var i=0;i<checkbox.length;i++)
37                 {
38                     checkbox[i].checked=!checkbox[i].checked;
39                 } 
40             }
41             else
42             {
43                 return false;
44             }
45         }
46         else
47         {
48             return false;
49         }
50     }
51     
52     function IsSelected()
53     {
54         checkbox=document.all.ChkBoxGroup;
55         
56         if(checkbox!=null)
57         {
58             if(checkbox.length+" "!="undefined")
59             {
60                 for(var i=0;i<checkbox.length;i++)
61                 {
62                     if(checkbox[i].checked)
63                     {
64                         return true;
65                     }
66                 } 
67             }
68             else
69             {
70                 return false;
71             }
72         }
73         else
74         {
75             return false;
76         }
77         
78         return false;
79     }
80     
81     function DelSelected()
82     {
83         //判断用户是否选择记录
84         if(!IsSelected())
85         {
86            alert("请至少选择一条或以上条记录!"); 
87         }
88         else
89         {
90             return confirm("你确认要删除该记录?");
91         }
92         return false;
93     }
94 </script>

 

Gridview控件部分代码如下:

 

ExpandedBlockStart.gif代码
1  <asp:TemplateField>
2                         <ItemTemplate>
3                             <input type="checkbox" name="ChkBoxGroup" value='<%# Eval("Id") %>' />
4                         </ItemTemplate>
5                         <HeaderTemplate>
6                             <input type="checkbox" id="ChkSelectAll" onclick="return SelectAllOrReverse()" />
7                         </HeaderTemplate>
8                         <ItemStyle HorizontalAlign="Center" />
9                     </asp:TemplateField>

 

 在该列的页头追加复选框,用于实现全选、反选。

 

ExpandedBlockStart.gif代码
 1     protected void DelDbData(object sender,EventArgs e)
 2     {
 3         string connStr = "Data Source=.;Initial Catalog=ASPNETSTUDY;PERSIST SECURITY INFO=true;user id=sa;password=sa";
 4         SqlConnection conn = new SqlConnection(connStr);
 5 
 6         //注意括号中是" + Request["ChkBoxGroup"] + "
 7         //而不是'" + Request["ChkBoxGroup"] + "'
 8         string sql = "delete from UserInfo where Id in (" + Request["ChkBoxGroup"+ ")";
 9         conn.Open();
10         SqlCommand comm = new SqlCommand(sql, conn);
11 
12         try
13         {
14             int res=comm.ExecuteNonQuery();
15 
16             if (res > 0)
17             {
18                 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "success","<script language='javascript'>alert('删除成功!');</script>");
19                 BindData(0);
20             }
21             else
22             {
23                 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Failture""<script language='javascript'>alert('对不起,删除失败,请稍后再试!');</script>");
24             }
25         }
26         catch
27         {
28             Response.Write("<script language='javascript'>alert('对不起,删除失败,请稍后再试!');</script>");
29         }
30 
31         conn.Close();
32     }

 

大功告成~! 

转载于:https://www.cnblogs.com/myroad/archive/2010/02/05/1664391.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值