Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)归海一刀
published in(发表于) 2014/1/30 1:12:50
用javascript操纵GridView中CheckBox的两个常用技巧_[Asp.Net教程]

用javascript操纵GridView中CheckBox的两个常用技巧_[Asp.Net教程]

这篇文章同样是为了解决一个博问中的提问: 提问:关于JS读取gridview,checkbox选择情况。当然,下面的实现中,有一半是为解决这个问题而做的,另一半是很久前帮另一位朋友做的,同样关于javascript对GridView中的CheckBox的操作,只是操作顺序完全反过来了,不是获取所有选择的项,而是根据用户的输入,自动选择选择相应的项。


虽然是为了解决GridView中的CheckBox操纵问题,但实际上功能并不仅限于GridView中,稍加改动就可以用到其他的场景,甚至都不用改动(不知道有没有这么好糊弄的客户)


代码依然帖在下面,比上一篇 用javascript/css实现GridView行背景色交替、点击行变色 长了很多,不过我感觉注释依然足够详细,所以也应该很容易理解,可以把下面两个文件的代码直接复制到你的项目中直接执行。最下面有文件的下载地址,可以直接下载后运行,代码在IE7和Firefox2下测试通过,有任何问题,请在下面留言,我将尽量及时回复。


CheckBox.aspx
主要包含一个GridView,里面包含了我们要折腾的CheckBox,还有一大~~~~堆的javascript,当然也还是我们折腾的重要手段,只是目标基本已经换成了GridView中的CheckBox,和GridView本身并没有太大关系


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CheckBox.aspx.cs" Inherits="CheckBox" %>




CheckBox







" />






DataFormatString="点击打开"
HeaderText="Link" HtmlEncode="False" />


已选择的项:


要选择的项:onclick="CheckThem()" />


当从上面GridView中选择或取消选择一项时,“已选择的项”中会自动更新为当前所有选中项的ID。


在“要选择的项”里填写要选择的项的ID(ID间用英文逗号分隔),点击“选择”可自动选中要选择的项。






CheckBox.aspx.cs
还是用来生成测试数据的,不然前面的GridView里没东西,就没得折腾了


using System;
using System.Data;

public partial class CheckBox:System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//生成DataTable并添加相应的列
DataTable dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Author");
dt.Columns.Add("Title");
dt.Columns.Add("PostTime");
dt.Columns.Add("URL");

//测试数据填充
dt.Rows.Add(1, "丁学", "用javascript/css实现GridView行背景色交替、点击行变色", "*************",
"**********************************************************************");
dt.Rows.Add(1, "丁学", "突发奇想--有关微软未来", "2008-05-11 09:59",
"http://www.cnblogs.com/dingxue/archive/2008/05/11/1191936.html");
dt.Rows.Add(2, "丁学", "可爱的google翻译,笑死我了", "2008-05-11 09:07 ",
"http://www.cnblogs.com/dingxue/archive/2008/05/11/1191900.html");
dt.Rows.Add(3, "丁学", "模板修改后重新发布", "2008-04-26 07:22",
"http://www.cnblogs.com/dingxue/archive/2008/04/26/1171778.html");
dt.Rows.Add(4, "丁学", "想买啥 VS 买了啥!理想与现实的差距咋就这么大咧?", "2008-04-13 07:39",
"http://www.cnblogs.com/dingxue/archive/2008/04/13/1150952.html");
dt.Rows.Add(5, "丁学", "XHTML/CSS记忆力大测试,两项都超过我,我请你吃饭!", "2008-04-03 06:40",
"http://www.cnblogs.com/dingxue/archive/2008/04/03/xhtml_css_test.html");
dt.Rows.Add(6, "丁学", "Designer VS Coder, who is the winner?", "2008-03-26 07:44",
"http://www.cnblogs.com/dingxue/archive/2008/03/26/coder_vs_designer.html");
dt.Rows.Add(7, "丁学", "用DIV模拟弹出窗口--窗体滚动跟随--丁学", "2007-09-03 08:42",
"http://www.cnblogs.com/dingxue/archive/2007/09/03/879654.html");
dt.Rows.Add(8, "丁学", "一个简单但常用的表格样式--鼠标划过行变色--简洁实现", "2007-08-09 07:12",
"http://www.cnblogs.com/dingxue/archive/2007/08/09/848555.html");
dt.Rows.Add(9, "丁学", "关于IE7关闭窗口时总是提示和上传图片前的本地预览解决办法", "2007-06-19 08:50",
"http://www.cnblogs.com/dingxue/archive/2007/06/19/788449.html");
dt.Rows.Add(10, "丁学", "IE对input元素onchange事件的支持BUG", "2007-03-23 07:54",
"http://www.cnblogs.com/dingxue/archive/2007/03/23/684807.html");
dt.Rows.Add(11, "丁学", "由验证控件引起的IE的超级爆笑BUG", "2007-03-22 07:35",
"http://www.cnblogs.com/dingxue/archive/2007/03/22/683401.html");
dt.Rows.Add(12, "丁学", "DIV中滚动条设置到随机位置(CSS+Javascript)", "2007-03-18 12:17",
"http://www.cnblogs.com/dingxue/archive/2007/03/18/678839.html");
dt.Rows.Add(13, "丁学", "ASP.NET AJAX1.0尝鲜试用:Web Service调用", "2007-03-17 17:36",
"http://www.cnblogs.com/dingxue/archive/2007/03/17/678383.html");
dt.Rows.Add(14, "丁学", "ASP.NET中利用利用Skin引入CSS的问题", "2007-03-17 17:30",
"http://www.cnblogs.com/dingxue/archive/2007/03/17/678374.html");

//将DataTable绑定到GridView
gvMeiMingZi.DataSource = dt;
gvMeiMingZi.DataBind();
}
}

示例文件:点击这里下载示例文件

来源:http://www.cnblogs.com/dingxue





If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759