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();
        }
      }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值