2014-11-01 92 views
0

檢查全部取消複選框中的GridView使用jQuery檢查全部取消複選框中的GridView使用jQuery

查看更多:C#ASP.NET jQuery的

在這裏所有的複選框不工作在標題複選框一個單一的點擊

 <script type="text/javascript" language="javascript"> 
    function CheckAll(Checkbox) { 
    var GridView1 = document.getElementById("<%=GridView1.ClientID %>"); 
    for (i = 1; i < GridView1.rows.length; i++) { 
     GridView1.rows[i].cells[3].getElementsByTagName("INPUT")[0].checked  =Checkbox.checked; 
     }} 

 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" Width="624px" CssClass="grid" 
     AllowPaging="True" AllowSorting="True" BackColor="White" OnRowEditing="GridView1_RowEditing" OnRowCancelingEdit="GridView1_RowCancelingEdit" 
     BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" PageSize = "5" 
     OnRowUpdating="GridView1_RowUpdating" DataKeyNames="id">   
      <Columns> 
      <asp:TemplateField> 
       &lt;HeaderTemplate> 
     <asp:CheckBox ID="chkHeader" runat="server" onclick="CheckAll(this)"/> 
      &lt;/HeaderTemplate> 
      <ItemTemplate> 
      <asp:CheckBox ID="chkchild" runat="server" /> 
      </ItemTemplate> 
      </asp:TemplateField> 
      <asp:BoundField DataField="id" HeaderText="id" SortExpression="id" InsertVisible="False" ReadOnly="True" /> 
       <asp:BoundField DataField="updatedby" HeaderText="updatedby" SortExpression="updatedby" /> 
      <asp:BoundField DataField="username" HeaderText="username" SortExpression="username" /> 
      <asp:BoundField DataField="password" HeaderText="password" SortExpression="password" /> 
      <asp:BoundField DataField="mail" HeaderText="mail" SortExpression="mail" /> 
<asp:BoundField DataField="imagename" HeaderText="imagename" SortExpression="imagename" /> 
      <asp:ImageField DataImageUrlField="uploadimage" HeaderText="uploadimage" ControlStyle-Width = "80" ControlStyle-Height = "100"> 
      <ControlStyle Height="100px" Width="80px"></ControlStyle> 
      </asp:ImageField> 
    <asp:CommandField ShowEditButton="True" /> 
     </Columns> 
    </asp:GridView> 

回答

1

checked是一個bool type屬性。

你應該分配truefalse它:

GridView1.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = true; 

而且你的手機值應根據aspx代碼是0

0

(這將是更容易,如果你提供了渲染HTML)

$(function() { 
    // Get your GridView, to restrict the "check/uncheck all" action only to this GridView (and don't mess up with another controllers in the page) 
    var MainGridView = $('#GridView1'); // Set your GridView's Id 

    // Bind Your Button to Check All CheckBoxes (Set the Id, or whatever CSS selector to match your CHECK ALL CHECKBOXES button) 
    // This CSS selector applied to your needs will be '#chkHeader'. (Use only this piece of code, and do not bind the uncheck to this control too, otherwise it will check and uncheck all everytime) 
    $('#ButtonCheckAllCheckBoxes').click(
     function() { 
      MainGridView.find("input[type='checkbox']").prop('checked', true); 
     } 
    ); 


    // Bind Your Button to Uncheck All CheckBoxes (Set the Id, or whatever CSS selector to match your UNCHECK ALL CHECKBOXES button) 
    $('#ButtonUncheckAllCheckBoxes').click(
     function() { 
      MainGridView.find("input[type='checkbox']").prop('checked', false); 
     } 
    ); 
}); 
0

改變這一行:

GridView1.rows [I] .cells [3] .getElementsByTagName( 「INPUT」) [0] .checked = Checkbox.checked;

與此

GridView1.rows [I] .cells [0] .getElementsByTagName( 「INPUT」)[0] = .checked Checkbox.checked;

相關問題