专栏首页Java架构师必看DataGrid 的 全选/取消全选 控制(CheckBox)

DataGrid 的 全选/取消全选 控制(CheckBox)

DataGrid控件:

  <Columns>
         <asp:TemplateColumn>
          <HeaderStyle Width="10px"></HeaderStyle>
          <HeaderTemplate>
           <INPUT id="CheckAll" name="CheckAll" type="checkbox" οnclick="ChooseAll()">
          </HeaderTemplate>
          <ItemTemplate>
           <asp:CheckBox id="CheckBox1" runat="server"></asp:CheckBox>
          </ItemTemplate>
         </asp:TemplateColumn>
         <asp:TemplateColumn HeaderText="序号">
          <HeaderStyle Wrap="False"></HeaderStyle>
          <ItemTemplate>
           <asp:Label runat="server" ID="labNO"></asp:Label>
          </ItemTemplate>
         </asp:TemplateColumn>
JavaScript函数:
  var checkFlag = true;
 function ChooseAll()
 {
        //if( !document.all("CheckAll").Checked ) // 全选
        if( checkFlag ) // 全选
 {
           var inputs = document.all.tags("INPUT");
           for (var i=0; i < inputs.length; i++) // 遍历页面上所有的 input 
           {
             if (inputs[i].type == "checkbox" && inputs[i].id != "CheckAll" )
              {
                 inputs[i].checked = true;
              }     
           }
           checkFlag = false;
        }
        else  // 取消全选
        {
           var inputs = document.all.tags("INPUT");
           for (var i=0; i < inputs.length; i++) // 遍历页面上所有的 input 
           {
              if (inputs[i].type == "checkbox" && inputs[i].id != "CheckAll" )
              {
                 inputs[i].checked = false;
              }     
           }
           checkFlag = true;
        }
 }
    // <summary>
 // 让用户加以确认删除数据。
 // </summary>
 function DelRec()
 {
        var inputs = document.all.tags("input");
        var selectedLen = 0;
        for( var i=0;i < inputs.length; i ++)
        {
           if(inputs[i].type == "checkbox")
           {
              if( inputs[i].checked )
              {
                 if(inputs[i].id != "CheckAll")
                 {
                    selectedLen ++;
                 }
              }
           }
        }
        if( selectedLen == 0 )
        {
           alert("请先选择您要删除的数据!");
        }
        else
        {
           var flag = confirm("您确定要删除所选择的这 " + selectedLen + " 条数据吗?");
           if(flag)
           {
              document.all("BtnDelRecord").click();  
           }
        }
 }

本文由来源 21aspnet,由 system_mush 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 到底什么是微服务?

    最近几年,越来越多的开发人员使用“微服务”一词来阐述他们的系统或应用架构,当然或许这只是他们在吹嘘自己在技术潮流中并未落伍。我认为,IT科技行业的人士至少要了...

    Java架构师必看
  • Spring Cloud面试题(2020最新版)

    Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java...

    Java架构师必看
  • 并发编程面试题(2020最新版)

    Java面试总结汇总,整理了包括Java基础知识,集合容器,并发编程,JVM,常用开源框架Spring,MyBatis,数据库,中间件等,包含了作为一个Java...

    Java架构师必看
  • 逆向对抗技术之ring3解除文件句柄,删除文件

    这些问题主要是工作中会遇到.包括后面的逆向对抗技术.有的可能只会提供思路.并且做相应的解决与对抗.

    IBinary
  • 《剑指offer》数组中出现次数超过数组长度一半的数字

    数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超...

    ConardLi
  • HANDLE

        HANDLE:句柄,是Windows用来表示对象的(不是C++的对象),HWND是其中一种,HWND是HANDLE,但HANDLE不只是HWND,更具体...

    猿人谷
  • Roslyn 入门:使用 Roslyn 静态分析现有项目中的代码

    发布于 2018-03-18 12:45 更新于 2018-06...

    walterlv
  • 操作系统实验一资料归纳

    指导书上出现了一个陌生的名词“句柄(handle)”,感觉比较奇妙,因为在之前编写微信公众号小程序看教程也编写了一个handle程序。所以留档一下吧。

    Ewdager
  • XACT与X3DAudio整合的问题

    逍遥剑客
  • XACT与X3DAudio整合的问题

    参考了一下SDK的文档, 发现X3DAUDIO_EMITTER的pVolumeCurve, CurveDistanceScaler这两个参数是用来做衰减用的.

    逍遥剑客

扫码关注云+社区

领取腾讯云代金券