2012-08-09 27 views
0

我在我的网页上有三个不同的复选框列表。我想要一个复选框,显示“选择全部”,当该复选框被选中时,所有三个复选框列表复选框都会被选中。我正在看这个例子,通过点击选择按钮来检查一个复选框列表,但我希望所有三个复选框列表复选框在javascript中检查。下面是我的代码点击一个按钮检查多个checkboxlist

<asp:CheckBox ID="chkCheckAll" runat="server" Text="Check/Uncheck All" 
             Style="font-weight: 700"  CausesValidation="false" oncheckedchanged="chkCheckAll_CheckedChanged" AutoPostBack="true" 
              /> 

    <asp:CheckBoxList ID="chkList_MetricsSeverity" runat="server" RepeatDirection="Horizontal" 
               RepeatColumns="3" Width="1060px"> 
              </asp:CheckBoxList> 

<asp:CheckBoxList ID="chkList_MetricsAvgMedian" runat="server" RepeatDirection="Horizontal" 
               RepeatColumns="3" Width="1060px"> 
              </asp:CheckBoxList> 

<asp:CheckBoxList ID="chkList_Counts" runat="server" RepeatDirection="Horizontal" 
               RepeatColumns="3" Width="1060px"> 
              </asp:CheckBoxList> 

任何帮助将不胜感激

+0

你是否使用jquery? – 2012-08-09 18:16:26

回答

0

这是需要完成的工作。下面是代码

function CheckAll() { 


     var chkbx = document.getElementById('<%=chkCheckAll.ClientID %>'); 

     var chkbxList1 = document.getElementById('<%=chkList_MetricsSeverity.ClientID %>'); 

     var chkbxList2 = document.getElementById('<%=chkList_MetricsAvgMedian.ClientID %>'); 

     var chkbxList3 = document.getElementById('<%=chkList_Counts.ClientID %>'); 
     if (chkbx.checked == true) { 
      var chkbxListCount = chkbxList1.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = true; 
      } 
      var chkbxListCount = chkbxList2.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = true; 
      } 
      var chkbxListCount = chkbxList3.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = true; 
      } 
     } 
     else { 
      var chkbxListCount = chkbxList1.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = false; 
      } 
      var chkbxListCount = chkbxList2.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = false; 
      } 
      var chkbxListCount = chkbxList3.getElementsByTagName('input'); 
      for (var i = 0; i < chkbxListCount.length; i++) { 
       chkbxListCount[i].checked = false; 
      } 
     } 




    } 
2

看一看here ...你可以找到实现上述两个asp.net和JavaScript的方式的东西的方式......

+0

我已经看到那篇文章,但它只针对一个复选框列表。我需要在javascript函数中传递多个checkboxlist的id。我不知道该怎么做。 – 2012-08-09 20:04:20