请问一下,这段代码怎么实现全选,在点击一下全不选啊,asp:CheckBox怎么没有name属性,我这var item=document.getElementsByName("");一句不知道怎么获得值了,请各位指点指点一下: <script language="javascript" type="text/javascript">
      function GetAllCheckBox(obj){
         var item=document.getElementsByName("");
          
        for( var i=0;i<item.length;i++)
         {
              if(item[i].type=="checkbox")
              {
                    item[i].checked=obj.check;
              }
         }
      }
</script><asp:TemplateField HeaderText="全选">
                <ItemTemplate>
                    <asp:CheckBox runat="server" ID="chbSelect"  n/>
                </ItemTemplate>
                <HeaderTemplate>
                    &nbsp;<input id="cbAll" type="checkbox"  onclick="GetAllCheckBox(this)" />全选
                </HeaderTemplate>
                <ControlStyle Width="50px" />
            </asp:TemplateField> 

解决方案 »

  1.   

     function CheckAll(oCheckbox)
      {
       var GridView2 = document.getElementById("<%=GridView2.ClientID %>");
       for(i = 1;i < GridView2.rows.length; i++)
       {
        GridView2.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = oCheckbox.checked;
       }
      }
      

  2.   

    <asp:TemplateField>
                    <HeaderTemplate>
                      <input id="Checkbox2" type="checkbox" onclick="CheckAll(this)" runat="server" /><label>全选</label>
                    </HeaderTemplate>
                    <ItemTemplate>
                      <asp:CheckBox ID="ItemCheckBox" runat="server" />
                    </ItemTemplate>
                  </asp:TemplateField>
      

  3.   

    var items=document.getElementsByTagName("input");
      

  4.   

    搞笑,javascript中能这样用 GridView2.rows[i].cells[0].
    ???
      

  5.   


    <Script>
    function SetCheckAll(obj)
    {
        var powerlist  = document.getElementsByName("<%=ItemCheckBox.ClientID%>");
        for(var i=0;i<powerlist.length;i++)
        {
           powerlist[i].checked = obj.checked;
        }
    }
    </script>
    <asp:TemplateField> 
                    <HeaderTemplate> 
                      <input id="Checkbox2" type="checkbox" onclick="SetCheckAll(this)" runat="server" /> <label>全选 </label> 
                    </HeaderTemplate> 
                    <ItemTemplate> 
                      <asp:CheckBox ID="ItemCheckBox" runat="server" /> 
                    </ItemTemplate> 
                  </asp:TemplateField> 
      

  6.   

    2樓的應該沒錯gridview在客戶端生成的是table
    2樓的GridView2 是獲取生成的table
      

  7.   

    惊天地泣鬼神的简单:加它加name就行了否则就是用TagName,或者在GridView里FindControl了(服务器端做需要postback,不推荐)
      

  8.   

    看到黑体加粗的部分吗?还有循环语句的;i < GridView2.rows.length,在javascript是不可能实现的,楼主的代码稍微改一下,就可以了.
      

  9.   

    各位2,3楼和8楼我都试过了,都说这个var GridView2 = document.getElementById(" <%=GridView2.ClientID %>"); 和    var powerlist  = document.getElementsByName("<%=ItemCheckBox.ClientID%>");
    有错,报错当前上下文中不存在此名称:请大家帮帮忙
      

  10.   

    而且asp:CheckBox根本就没有name属性,也点不出这个document.getElementsByTagName("input");只有getElementsByName(),getElementsById()。
      

  11.   

    <script language="javascript" type="text/javascript"> 
          function GetAllCheckBox(obj){ 
            var item=document.getElementsByTagName("input"); 
              
            for( var i=0;i <item.length;i++) 
            { 
                  if(item[i].type=="checkbox") 
                  { 
                        item[i].checked=obj.check; 
                  } 
            } 
          } 
    </script> 
      

  12.   

    15楼的兄弟,我这里怎么没有这个getElementsByTagName啊,用document根本点不出来,只有getElementsByName(),getElementsById()。
      

  13.   

    <script language="javascript" type="text/javascript"> 
          function GetAllCheckBox(obj){ 
            var item=document.getElementsByTag("input"); 
              
            for( var i=0;i <item.length;i++) 
            { 
                  if(item[i].type=="checkbox") 
                  { 
                        item[i].checked=obj.check; 
                  } 
            } 
          } 
    </script> 
      

  14.   

    对象不支持此属性或方法呢
    var item=document.getElementsByTag("input"); 
    用下面这个好像被禁用了,连选都不能选
    var item=document.getElementsByTagName("input"); 
      

  15.   

    function SetCheckAll(obj)
    {
        var powerlist  = document.getElementsByTagName("input");
        for(var i=0;i<powerlist.length;i++)
        {
            try
           {
               if(powerlist[i].type="checkbox")
               {
                   powerlist[i].checked = obj.checked;
               }
           }
           catch(e)
           {
           }
        }
    }