以下是我在GridView中控制CheckBox的全选/取消全选,根据子CheckBox处理全选CheckBox状态的操作并获取所选GridView中所选行的列的值。
脚本代码:
    <script language="javascript" type="text/javascript">
    //全选/全取消GridView中的CheckBox
    //参数gv:  GridView的ID
    //参数input2: 功能控件ID(全选CheckBox)
    function CheckAll(gv,input2)
    {
        var objForm = document.getElementById(gv);
        var objLen = objForm.rows.length;
        for (var iCount = 0; iCount < objLen; iCount++)
        {
             objForm.rows[iCount].cells[0].getElementsByTagName("INPUT")[0].checked = input2.checked;
        }
    }
       
    function CheckSelect(gv,input2)
    {
        if (input2.checked == true)
        {
            if(GetCheckBoxCount(gv) == GetCheckedBoxCount(gv))
            {
                form1.Checkbox3.checked = true;
            }
        }
        else
        {
            form1.Checkbox3.checked = false;
        }
    }
   
    function GetCheckBoxCount(gv)
    {
        var objForm = document.getElementById(gv);
        var objLen = objForm.rows.length;
        return (objLen-1);
    }
   
    function GetCheckedBoxCount(gv)
    {
        var count;
        count = 0;
        var objForm = document.getElementById(gv);
        var objLen = objForm.rows.length;
        for(var iCount = 0; iCount < objLen; iCount++)
        {
             if(objForm.rows[iCount].cells[0].getElementsByTagName("INPUT")[0].checked == true)
             {
                 count ++;
             }
        }
        return count;
    }   
    </script>
页面代码:
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
            DataSourceID="LinqDataSource1" DataKeyNames="CarID">
            <Columns>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:CheckBox ID="CheckBox2" runat="server" Width="20px" onclick="CheckSelect('GridView1',this)"/>
                    </ItemTemplate>
                    <HeaderTemplate>
                        <input ID="Checkbox3" type="checkbox" style="width:20px" onclick="CheckAll('GridView1',this)"/>
                    </HeaderTemplate>
                    <ItemStyle Width="20px" />
                </asp:TemplateField>
                <asp:BoundField DataField="CarID" HeaderText="CarID" ReadOnly="True"
                    SortExpression="CarID" />
            </Columns>
        </asp:GridView>
        <br />
        <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
        <br />
        <asp:LinqDataSource ID="LinqDataSource1" runat="server"
            ContextTypeName="DBML.CarDataContext" Select="new (CarID, TeamID, DriverID)"
            TableName="CarInfo">
        </asp:LinqDataSource>    
    </div>
    </form>
< /body>
cs文件代码:
 protected void Button1_Click(object sender, EventArgs e)
        {
            int count = 0;
            string items = "";
            foreach (GridViewRow item in GridView1.Rows)
            {
                CheckBox cb = (CheckBox)item.FindControl("CheckBox2");
                if (cb.Checked)
                {
                    items = items + item.Cells[1].Text;//已选行的第2列的值
                    count++;
                }
            }
            Response.Write(count.ToString() + items);
        }
以上代码可能通用性还有待增强,也希望对大家有所帮助。谢谢!

GridView中CheckBox的用法的更多相关文章

  1. asp.net,根据gridview 中checkbox复选框选中的行对数据库进行操作

    在asp.net中,使用checkbox,对gridview添加复选框. 多选数据行后,根据已选数据,对原数据进行多条语句查询. string sql = "Select * from 表 ...

  2. GridView中CheckBox单击事件(oncheckedchanged)

    在GridView中加入 CheckBox控件,想通过单击选中出现如下图所示效果: 具体做法是: 前台GV部份省掉.只加关键的CheckBox部份. view plaincopy to clipboa ...

  3. GridView中CheckBox翻页记住选项

    <asp:GridView ID="gvYwAssign" runat="server" AutoGenerateColumns="False& ...

  4. js gridview中checkbox的全选与全不选

    1.html: <asp:GridView runat="server" ID="gvAddBySR" AutoGenerateColumns=" ...

  5. 模板列传值到子窗体中,子窗体中多选gridview中checkbox保存数据多项到数据库中

    <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...

  6. 实现CheckBox的三种选中状态(全选、半选、不选)在GridView中模拟树形的功能

    度娘了很多帖子,只说三种状态要用图片替换来做,但没找到有用的例子,被逼自己写了一个 三方控件肯定是很多的,如jstree,可以直接用 由于公司的UDS限制,不能上传图片,只能文字说明了. 就是要在gr ...

  7. asp.net中gridview的checkbox使用总结

    1.在gridview中的<column>中加入 <asp:TemplateField HeaderText="选择"> <ItemTemplate& ...

  8. GridView中实现CheckBox的全选

    GridView中实现CheckBox的全选 用服务器端的方法: 在页面上放一个gridview控件,配置好数据源,编辑列, <asp:GridView ID="GridView1&q ...

  9. 使用js获取checkbox控件在GridView中的第几行

    这次的知识点是如何使用js获取checkbox控件所在的是第几行!!! 我们可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始) 这两个 ...

随机推荐

  1. 从头认识Spring-3.8 简单的AOP日志实现(注解版)-扩展添加检查订单功能,以便记录并检測输入的參数

    这一章节我们讨论一下扩展添加检查订单功能,以便记录并检測输入的參数. 1.domain 蛋糕类: package com.raylee.my_new_spring.my_new_spring.ch03 ...

  2. 李洪强iOS开发之OC[006] - 类和对象

  3. NetBeans 设置界面语言

    我就懒得吐槽TNND你就不能让用户自己选择语言?这SB中文翻译我也是醉了,尽是误导人 下面的例子用jMonkeyEngine SDK的设置为例子(本质上就是NetBeans) 英文设置: 中文设置:

  4. linux shell自动输入实现

    1 #!/bin/sh 2  3 while read line 4 do 5         str=$line 6         var1=`echo $str|awk -F ' ' '{pri ...

  5. CS项目总结

    最近做了近一年的CS项目终于接近完工了,有一种脱离苦海,跳出泥潭的感觉.虽然此项目做的很不理想,但它却给了我颇多感受,许多经验教训值得总结. 1.总的技术解决方案大方向上选择的不合适,导致后期对新的需 ...

  6. HTML5 Canvas绘图详解 drawImage() 方法 有图有真相!

    步骤 1 2 3 4 5   简介 是一个新的HTML元素,这个元素可以被Script语言(通常是JavaScript)用来绘制图形.例如可以用它来画图.合成图象.或做简单的(和不那么简单的)动画. ...

  7. Android Studio 使用笔记:给包重命名~~有点水

    很简单,选择需要重命名的包,按下 Shift + F6 这时候出现提示,选择 Rename package 输入新的包名,Refactor按钮会变亮,点击就可以了. 注意:这个是重命名一个包名,想做 ...

  8. jquery.cookie.js 使用小结

    先引入jquery,再引入:jquery.cookie.js 添加一个"会话cookie" $.cookie('the_cookie', 'the_value'); 这里没有指明 ...

  9. Python_selenium之执行JavaScript

    Python_selenium之执行JavaScript 一.简略的介绍selenium执行JavaScript 1. Example 1进入浏览器之后,弹出一个alert弹框 #coding:utf ...

  10. 在DLL中动态加载其所依赖的dll

    windows下LoadLibrary函数的搜索顺序是先搜索system32等系统环境变量path下注册过的路径,然后是当前路径. 这里的相对路径是指的主exe所在路径,并且相对路径在程序运行过程中可 ...