CheckBoxList中有多个项,当选择/不选择某项时如果其AutoPostBack为True,则会触发SelectedIndexChanged,但是CheckBoxList及其Items属性都没有直接能获取当前选择的项的属性,想了一下,可以先将上一次的勾选状态存到ViewState中,在触发SelectedIndexChanged的时候进行比较,具体代码如下:
-
<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="WebApplication1._Default"%>
-
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
<htmlxmlns="http://www.w3.org/1999/xhtml">
-
<headrunat="server">
-
<title>无标题页</title>
-
</head>
-
<body>
-
<formid="form1"runat="server">
-
<div>
-
<asp:CheckBoxListID="CheckBoxList1"runat="server"AutoPostBack="True"
-
onprerender="CheckBoxList1_PreRender"
-
onselectedindexchanged="CheckBoxList1_SelectedIndexChanged"
-
RepeatDirection="Horizontal">
-
<asp:ListItem>1</asp:ListItem>
-
<asp:ListItem>2</asp:ListItem>
-
<asp:ListItemSelected="True">3</asp:ListItem>
-
<asp:ListItem>4</asp:ListItem>
-
<asp:ListItem>5</asp:ListItem>
-
</asp:CheckBoxList>
-
</div>
-
</form>
-
</body>
-
</html>
-
usingSystem;
-
usingSystem.Collections.Generic;
-
namespaceWebApplication1
- {
-
publicpartialclass_Default:System.Web.UI.Page
- {
-
protectedvoidPage_Load(objectsender,EventArgse)
- {
-
Dictionary<int,bool>dic=newDictionary<int,bool>();
-
for(inti=0;i<CheckBoxList1.Items.Count;i++)
- dic.Add(i,CheckBoxList1.Items[i].Selected);
-
if(ViewState["cblChecked"]==null)
-
ViewState["cblChecked"]=dic;
- }
-
protectedvoidCheckBoxList1_SelectedIndexChanged(objectsender,EventArgse)
- {
-
if(ViewState["cblChecked"]!=null)
- {
-
Dictionary<int,bool>dic=ViewState["cblChecked"]asDictionary<int,bool>;
-
for(inti=0;i<CheckBoxList1.Items.Count;i++)
- {
-
if(dic[i]!=CheckBoxList1.Items[i].Selected)
-
Response.Write("当前操作项为:"+i.ToString());
- dic[i]=CheckBoxList1.Items[i].Selected;
- }
-
ViewState["cblChecked"]=dic;
- }
- }
- }
- }
分享到:
相关推荐
在Asp.net中如何用SQLDMO来获取SQL Server中的对象信息 使用Relations建立表之间的关系并却使用PagedDataSource类对DataList进行分页 通过作业,定时同步两个数据库 SQLSERVER高级注入技巧 利用反射实现ASP.NET控件和...
如何在ASP.NET中做一个日期选择器 198.如何在弹出对话框的同时保持页面的显示 199.如何点击按钮弹出新页面,输入数据后返回并且不刷新页面 第11章 文件操作 200.如何读取、修改文本文件 201....
1.2.1 简单的ASP.NET页面 1.2.2 ASP.NET控件的优点 1.2.3 ASP.NET控件概述 1.3 向ASP.NET页面中添加应用逻辑 1.3.1 处理控件事件 1.3.2 处理页面事件 1.4 ASP.NET页面的结构 1.4.1 ...
内容包括:ASP.NET Web表单的使用,高级ASP.NET页面的开发,ADO.NET的使用,ASP.NET应用程序的使用, ASP.NET应用程序的保护,ASP.NET Web服务的建立,.NET框架的利用,自定义的ASP.NET控件的建立,ASP.NET的应用...
197.如何在ASP.NET中做一个日期选择器 198.如何在弹出对话框的同时保持页面的显示 199.如何点击按钮弹出新页面,输入数据后返回并且不刷新页面 第11章 文件操作 200.如何读取、修改文本文件 201.如何在ASP.NET...
1.2.1 简单的ASP.NET页面 1.2.2 ASP.NET控件的优点 1.2.3 ASP.NET控件概述 1.3 向ASP.NET页面中添加应用逻辑 1.3.1 处理控件事件 1.3.2 处理页面事件 1.4 ASP.NET页面的结构 1.4.1 ...
1.2.1 简单的ASP.NET页面 1.2.2 ASP.NET控件的优点 1.2.3 ASP.NET控件概述 1.3 向ASP.NET页面中添加应用逻辑 1.3.1 处理控件事件 1.3.2 处理页面事件 1.4 ASP.NET页面的结构 1.4.1 ...
1.2.1 简单的ASP.NET页面 1.2.2 ASP.NET控件的优点 1.2.3 ASP.NET控件概述 1.3 向ASP.NET页面中添加应用逻辑 1.3.1 处理控件事件 1.3.2 处理页面事件 1.4 ASP.NET页面的结构 1.4.1 ...
1.2.1 简单的ASP.NET页面 1.2.2 ASP.NET控件的优点 1.2.3 ASP.NET控件概述 1.3 向ASP.NET页面中添加应用逻辑 1.3.1 处理控件事件 1.3.2 处理页面事件 1.4 ASP.NET页面的结构 1.4.1 ...
112 <br>0188 如何在ASP.NET中显示当前IE浏览器头信息 113 <br>5.6 其他应用技巧 114 <br>0189 如何判断年份是否为闰年 114 <br>0190 如何根据年份判断十二生肖 114 <br>0191 如何根据IP...
供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) ----------NONONONO-------------- 全局统一的缓存类(Cache.cs) 常用显示日期时间、农历、生肖的...
----------Database-------------- 1.DataTable帮助类(DataTableHelper.cs) ...供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs)
----------Database-------------- 1.DataTable帮助类(DataTableHelper.cs) ...供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs)
----------Database-------------- 1.DataTable帮助类...供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) 简单写了点,还有很多,希望能对大家有帮助
供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) 简单写了点,还有很多,希望能对大家有帮助 ====================================================...
WHC.OrderWater.Commons 伍华聪 公共类源码 类库 帮助...供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) 简单写了点,还有很多,希望能对大家有帮助
供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) 简单写了点,还有很多,希望能对大家有帮助 ==================================================...
供Asp.Net直接调用的包装类(WebPreview.cs) 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) 简单写了点,还有很多,希望能对大家有帮助 =================================================...
22.供Asp.Net直接调用的包装类(WebPreview.cs) 23.计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) ----------NONONONO-------------- 1.全局统一的缓存类(Cache.cs) 2.常用显示日期时间、农历...
22. 供Asp.Net直接调用的包装类(WebPreview.cs) 23. 计算机重启、关电源、注销、关闭显示器辅助类(WindowsExitHelper.cs) ----------NONONONO-------------- 1. 全局统一的缓存类(Cache.cs) 2. 常用显示日期时间、...