浅析ASP.NET CheckBoxList

开发 后端
本文介绍ASP.NET CheckBoxList,需要注意的是ASP.NET CheckBoxList 可以呈现为 table 布局,也可以呈现为流布局。

ASP.NET CheckBoxList 实现单选

一看标题估计大家都开始怀疑了:单选?为什么不直接使用 RadioButtonList ?
是的。你是对的。然而,实际应用中需求千变万化,谁让我们的客户够 BT 呢?

主要代码

只有一个通用的ASP.NET CheckBoxList_Click 函数,
需要注意的是ASP.NET CheckBoxList 可以呈现为 table 布局,也可以呈现为流布局(使用 span 做外部容器)

我的习惯是,脚本代码中,尽量不直接引用 html id,因为对于服务器控件对应的是 ClientID,而ClientID与控件层次关联的,不利于代码移植复用,因此尽可能选择直接传递对象,通过 DOM 获取相关的父控件和子控件。

  1. functionCheckBoxList_Click(sender)  
  2. {  
  3. varcontainer=sender.parentNode;  
  4. if(container.tagName.toUpperCase()=="TD"){  
  5. //服务器控件设置呈现为table布局(默认设置),否则使用流布局  
  6. containercontainer=container.parentNode.parentNode;  
  7. //层次:<table><tr><td><input/> 
  8. }  
  9. varchkList=container.getElementsByTagName("input");  
  10. varsenderState=sender.checked;  
  11. for(vari=0;i<chkList.length;i++){  
  12. chkList[i].checked=false;  
  13. }  
  14. sender.checked=senderState;  

 

  1. <h3>单选效果的CheckBoxList</h3> 
  2. <divstyledivstyle="float:left"> 
  3. <h4>静态项</h4> 
  4. <asp:CheckBoxListIDasp:CheckBoxListID=
    "CheckBoxList1"
    BorderWidth="1"runat="server"RepeatLayout="Flow"> 
  5. <asp:ListItemonclickasp:ListItemonclick=
    "CheckBoxList_Click(this)"
    Value="Item1">Item1</asp:ListItem> 
  6. <asp:ListItemonclickasp:ListItemonclick=
    "CheckBoxList_Click(this)"
    Value="Item2">Item2</asp:ListItem> 
  7. <asp:ListItemonclickasp:ListItemonclick=
    "CheckBoxList_Click(this)"
    Value="Item3">Item3</asp:ListItem> 
  8. <asp:ListItemonclickasp:ListItemonclick=
    "CheckBoxList_Click(this)"
    Value="Item4">Item4</asp:ListItem> 
  9. <asp:ListItemonclickasp:ListItemonclick=
    "CheckBoxList_Click(this)"
    Value="Item5">Item5</asp:ListItem> 
  10. </asp:CheckBoxList> 
  11. </div> 
  12. <divstyledivstyle="float:left;padding-left:100px"> 
  13. <h4>绑定项</h4> 
  14. <asp:CheckBoxListIDasp:CheckBoxListID="CheckBoxList2"BorderWidth="1"runat=
    "server"
    DataTextField="Value"DataValueField="Key"OnDataBound=
    "CheckBoxList2_DataBound"
    > 
  15. </asp:CheckBoxList> 
  16. </div> 

兼容性
IE 6 SP6,  FF 2.0,  Opera 9.2 测试通过

页面效果

页面效果

【编辑推荐】

  1. ASP.NET开发技巧之Theme功能浅析
  2. 详解ASP.NET动态编译
  3. Apache支持ASP.NET方法浅析
  4. 浅谈ASP.NET服务器标准控件
  5. ASP.NET中SQL Server数据库备份恢复浅析
责任编辑:佚名 来源: MSDN
相关推荐

2009-08-10 15:42:33

ASP.NET Che

2009-07-31 13:06:53

CheckBoxLisASP.NET页面

2009-07-24 13:41:15

ASP.NET AJA

2009-07-31 12:43:59

ASP.NET MVC

2009-08-05 15:50:13

ASP.NET优点

2009-08-10 13:32:15

ASP.NET TimASP.NET组件设计

2009-07-27 12:56:27

控件CheckBoxLASP.NET服务器

2009-08-03 13:38:18

ASP.NET编程模型

2009-07-24 18:02:46

ASP.NET编程

2009-08-05 16:50:09

ASP.NET For

2009-08-04 17:16:16

ASP.NET代码优化

2009-07-27 17:25:53

ASP.NET验证控件

2009-08-05 16:17:29

ASP.NET For

2009-08-05 16:53:14

ASP.NET组件设计

2009-08-03 10:07:20

ASP.NET Ses

2009-08-05 13:16:43

ASP.NET URL

2009-08-10 18:19:37

ASP.NET安装环境

2009-08-10 14:55:43

ASP.NET htt

2009-07-27 15:34:11

MembershipASP.NET

2009-07-29 09:34:54

IsPostBack属ASP.NET
点赞
收藏

51CTO技术栈公众号