Gridview复选框选中已更改的事件在jquery中没有出现问题

时间:2017-09-22 08:25:57

标签: jquery asp.net

<script type="text/javascript">
    $(document).ready(function () {
        //Checked or unchecked All Checkboxes inside grid with header checkbox   
        $("#<%= GridView_ManageUser.ClientID %> input[id*='checkbox_allcheckUncheck']").click(function () {
                if ($(this).is('checked'))
                    //Checkd All Child checkbox  
                    $("#<%= GridView_ManageUser.ClientID %> input[id*='CheckBox']").attr('checked', this.checked);
                else
                    //UnCheckd All Child checkbox  
                    $("#<%= GridView_ManageUser.ClientID %> input[id*='CheckBox']").removeAttr('checked', this.checked);
            });
            // Header checkbox checked or unchecked inside grid row checkboxes   
        $("#<%=GridView_ManageUser.ClientID%> input[id*='CheckBox']checkbox").click(function () {
                //Get All Checkbox inside grid  
            var GetAllCheckboxes = $("#<%=GridView_ManageUser.ClientID%> input[id*='CheckBox']checkbox").size();
                //Get number of checked checkboxes inside grid   
            var MarkcheckedCheckboxes = $("#<%=GridView_ManageUser.ClientID%> input[id*='CheckBox']checkboxchecked").size();
                //Check / Uncheck top checkbox if all the checked boxes in list are checked  
            $("#<%=GridView_ManageUser.ClientID%> input[id*='checkbox_allcheckUncheck']checkbox").attr('checked', GetAllCheckboxes == MarkcheckedCheckboxes);
            });
        });
    </script>

                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

                        <asp:BoundField DataField="emailID" HeaderText="Email">
                            <ItemStyle Width="55%" CssClass="cssClass_hover" />
                        </asp:BoundField>
                    </Columns>
                    <PagerSettings FirstPageText="First" LastPageText="Last" Mode="NextPreviousFirstLast" />

                    <PagerStyle Height="50px" />
                    <RowStyle HorizontalAlign="Center" Height="45px"></RowStyle>
                </asp:GridView>  

尝试选中或取消选中gridview中的所有复选框。但标题复选框检查已更改事件在此处不起作用 这是我的jquery代码..我正在尝试检查取消选中gridview的所有复选框但未能执行

1 个答案:

答案 0 :(得分:1)

您可以使用简单的代码完成此操作。获取检查/取消选中所有状态的状态,并将该状态分配给gridview中的所有复选框。

    $("#<%= GridView_ManageUser.ClientID %> input[id*='checkbox_allcheckUncheck']").change(function () {
        $("#<%= GridView_ManageUser.ClientID %> input[id*='CheckBox']").prop('checked', $(this).is(':checked'));
    });

获取复选框的总数

var MarkcheckedCheckboxes = $("#<%=GridView_ManageUser.ClientID%> input[id*='CheckBox']").length;

获取已选中复选框的总数

var MarkcheckedCheckboxes = $("#<%=GridView_ManageUser.ClientID%> input[id*='CheckBox']:checked").length;