CheckBox为CheckBoxList实现全选或全取消选择
标签:
JavaScript
某一个时候,CheckBoxList的选择太多,用户需要一个全选或全取消的功能。下面Insus.NET使用Javascript来实现它。
准备好一个对象:
MusicType
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Summary description for MusicType/// </summary>namespace Insus.NET{ public class MusicType { private int _ID; private string _TypeName; public int ID { get { return _ID; } set { _ID = value; } } public string TypeName { get { return _TypeName; } set { _TypeName = value; } } public MusicType() { // // TODO: Add constructor logic here // } public MusicType(int id, string typeName) { this._ID = id; this._TypeName = typeName; } }}
填充对象:
View Code
public List<MusicType> GetMusicType() { List<MusicType> mt = new List<MusicType>(); mt.Add(new MusicType(1, "甜密情歌")); mt.Add(new MusicType(2, "网络红歌")); mt.Add(new MusicType(3, "儿童歌曲")); mt.Add(new MusicType(4, "民族精选")); mt.Add(new MusicType(5, "校园歌曲")); mt.Add(new MusicType(6, "摇滚音乐")); mt.Add(new MusicType(7, "胎教音乐")); mt.Add(new MusicType(8, "红色名曲")); mt.Add(new MusicType(9, "串烧金曲")); mt.Add(new MusicType(10, "动慢歌曲")); return mt; }
在站点建一个aspx网页,并拉两个控件,一个是CheckBox和CheckBoxList:
View Code
全选<asp:CheckBox ID="CheckBoxAll" runat="server" onClick="javascript:Check_Uncheck_All(this);" /><br /> <asp:CheckBoxList ID="CheckBoxListMusicType" runat="server" RepeatColumns="3" RepeatDirection="Horizontal" Width="300"></asp:CheckBoxList>
接下来,我们为CheckBoxList绑定数据:
View Code
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Insus.NET;public partial class Default2 : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) Data_Binding(); } private void Data_Binding() { this.CheckBoxListMusicType.DataSource = GetMusicType(); this.CheckBoxListMusicType.DataTextField = "TypeName"; this.CheckBoxListMusicType.DataValueField = "ID"; this.CheckBoxListMusicType.DataBind (); } }
最后是写Javascript代码:
View Code
<script type="text/javascript"> function Check_Uncheck_All(cb) { var cbl = document.getElementById("<%=CheckBoxListMusicType.ClientID%>"); var input = cbl.getElementsByTagName("input"); if (cb.checked) { for (var i = 0; i < input.length; i++) { input[i].checked = true; } } else { for (var i = 0; i < input.length; i++) { input[i].checked = false; } } } </script>
ok完成,看看效果:
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦