• GridView中实现CheckBox的全选


    用服务器端的方法:
    在页面上放一个gridview控件,配置好数据源,编辑列,添加一个模版列,再编辑模版,放入一个checkbox控件。代码如下:

    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="AreaID" DataSourceID="SqlDataSource1"> 
    <Columns> 
    <asp:BoundField DataField="AreaID" HeaderText="AreaID" ReadOnly="True" SortExpression="AreaID" /> 
    <asp:BoundField DataField="CityID" HeaderText="CityID" SortExpression="CityID" /> 
    <asp:TemplateField> 
    <HeaderTemplate> 
    <asp:CheckBox ID="chkAll" runat="server" AutoPostBack="True" OnCheckedChanged="chkAll_CheckedChanged" /> 
    </HeaderTemplate> 
    <ItemTemplate> 
    <asp:CheckBox ID="chkItem" runat="server" /> 
    </ItemTemplate> 
    </asp:TemplateField> 
    </Columns> 
    </asp:GridView>

    后台cs代码:

    protected void chkAll_CheckedChanged(object sender, EventArgs e) 
    { 
    for (int i = 0; i < this.GridView1.Rows.Count; i++) 
    { 
    ((CheckBox)GridView1.Rows[i].FindControl("chkItem")).Checked = ((CheckBox)this.GridView1.HeaderRow.FindControl("chkAll")).Checked; 
    } 
    }


    用脚本实现:

    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="AreaID" DataSourceID="SqlDataSource1"> 
    <Columns> 
    <asp:BoundField DataField="AreaID" HeaderText="AreaID" ReadOnly="True" SortExpression="AreaID" /> 
    <asp:BoundField DataField="CityID" HeaderText="CityID" SortExpression="CityID" /> 
    <asp:TemplateField> 
    <HeaderTemplate> <input id="chkAll" onclick="SelectAll(this)"; type=checkbox> </HeaderTemplate> 
    <ItemTemplate> <input id="chkItem" type=checkbox> </ItemTemplate> </asp:TemplateField> 
    </Columns> 
    </asp:GridView>


    再客户端写javascript

    function SelectAll(chkbox) 
    { 
    var box=chkbox; 
    state=theBox.checked; 
    elem=box.form.elements; 
    for(i=0;i<elem.length;i++) 
    if(elem[i].type=="checkbox" && elem[i].id!=box.id) 
    { if(elem[i].checked!=state) { elem[i].click(); } 
    } 
    }
  • 相关阅读:
    python常见的错误异常
    vim命令c编程
    递归函数初步理解---python实现(汉诺塔问题)
    python报错:AttributeError: module 'pdb' has no attribute 'set_trace'
    python程序控制结构
    python函数
    结构体的四种定义方法
    基于一维数组的桶排序入门
    双链表与单链表的比较
    在用free()函数释放指针内存时为何要将其指针置空
  • 原文地址:https://www.cnblogs.com/zhangsongshan/p/2352547.html
Copyright © 2020-2023  润新知