2014-10-04 50 views
0

我使用下面的代碼綁定一個Repeater檢查只有一個直放站的可見覆選框

<asp:Repeater ID="rptList" runat="server" OnItemCommand="rptList_ItemCommand"> 
    <ItemTemplate> 
     <tr class="odd gradeX" id="trid" runat="server"> 
      <td data-title="Code"> 
       <asp:CheckBox ID="chkid" runat="server" AutoPostBack="false" /> 
       <asp:HiddenField ID="hiddenid" runat="server" Value='<%#Eval("Visa_Type_Id") %>'/> 
      </td> 
      <td class="hidden-480"><%#Container.ItemIndex+1 %></td> 
      <td class="hidden-480"> 
       <asp:LinkButton ID="lnk1" runat="server" CommandName="Edit" CommandArgument='<%#Eval("Visa_Type_Id") %>'><%#Eval("Visa_Type_Name") %> </asp:LinkButton> 
      </td> 
      <td class="hidden-480"><%#Eval("Visa_Description") %></td> 
      <td class=" " style="width: 100px;"><a href="#"><span class="label label-success">Active</span></a>&nbsp;<a href="#"><span class="label label-success">Publish</span></a></td> 
     </tr> 
    </ItemTemplate> 
</asp:Repeater> 

下面的代碼是檢查所有的複選框:

通過上面的代碼
protected void chkAll_CheckedChanged(object sender, EventArgs e) 
{ 
    for (int i = 0; i <= rptList.Items.Count - 1; i++) 
    { 
     CheckBox chk = (CheckBox)rptList.Items[i].FindControl("chkid"); 
     if (chk.Checked == true) 
     { 
      chk.Checked = false; 
     } 
     else 
     { 
      chk.Checked = true; 
     } 
    } 
} 

現在所有檢查Repeater中的複選框,但我只想檢查分頁中顯示的複選框。目前,如果我在第1頁上,使用上面的代碼,第2頁上的框也會被檢查。

請幫幫我。

回答

0

,你可以用它代替服務器端代碼的jQuery: jsfiddle

$("#checkAll").click(function() { 
    $('input:checkbox').not(this).prop('checked', this.checked); 
}); 
相關問題