zoukankan      html  css  js  c++  java
  • 在DataGrid页眉上添加全选的CheckBox控件

    很简单的方法,就是用js实现:
    页面:
    <asp:datagrid id="dgUserList" runat="server" Width="640px" BorderColor="White" PagerStyle-HorizontalAlign="Right"
    AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False">
    <AlternatingItemStyle BackColor="#F5F5F5"></AlternatingItemStyle>
    <ItemStyle HorizontalAlign="Center"></ItemStyle>
    <HeaderStyle HorizontalAlign="Center" ForeColor="White" BackColor="#4A95FD" Height="8"></HeaderStyle>
    <PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
    <Columns>
    <asp:TemplateColumn>
    <HeaderTemplate>
    <asp:CheckBox id="chkAll" runat="server"></asp:CheckBox>
    </HeaderTemplate>
    <ItemTemplate>
    <asp:CheckBox id="chkItem" runat="server"></asp:CheckBox>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:BoundColumn DataField="id" HeaderText="序号"></asp:BoundColumn>
    <asp:BoundColumn DataField="username" HeaderText="用户名"></asp:BoundColumn>
    <asp:BoundColumn DataField="workno" HeaderText="工号"></asp:BoundColumn>
    <asp:BoundColumn DataField="dept" HeaderText="部门"></asp:BoundColumn>
    </Columns>
    <PagerStyle Visible="False" HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
    </asp:datagrid>
    后台代码:
    private void dgUserList_PreRender(object sender, System.EventArgs e)
    {
    foreach (DataGridItem item in dgUserList.Controls[0].Controls)
    {
    if (item.ItemType == ListItemType.Header)
    {
    CheckBox chkAll=(CheckBox)item.FindControl("chkAll");
    System.Text.StringBuilder strScript = new System.Text.StringBuilder("<script language=@#javascript@#> \n");
    strScript.Append(" function checkStatus() { \n");
    strScript.Append(" var bAll = true; \n");
    strScript.Append(" bAll = document.all(@#" + chkAll.ClientID + "@#).checked; \n");
    for(int i=0; i<dgUserList.Items.Count ; i++)
    {
    strScript.Append(" document.all(@#" + dgUserList.Items[i].Cells[0].FindControl("chkItem").ClientID + "@#).checked = bAll; \n");
    }
    strScript.Append(" } \n");
    strScript.Append("</script> \n");
    if(!Page.IsClientScriptBlockRegistered("checkStatus"))
    Page.RegisterClientScriptBlock("checkStatus",strScript.ToString());
    chkAll.Attributes.Add("onclick","checkStatus()");
    return;
    }

  • 相关阅读:
    提升网页访问速度
    npm模块之http-proxy-middleware使用教程
    Spring MVC详解
    angular ng-select ng-option
    grunt uglify 去掉console.log
    window.open
    spring学习
    requirejs 入门【链接】
    IOS上iframe的滚动条失效的解决办法
    优秀技术链接
  • 原文地址:https://www.cnblogs.com/EasonWu/p/1085507.html
Copyright © 2011-2022 走看看