Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在嵌套的listview中使用复选框。父复选框使用JQuery选择所有子复选框_Javascript_Jquery_Listview_Checkbox - Fatal编程技术网

Javascript 在嵌套的listview中使用复选框。父复选框使用JQuery选择所有子复选框

Javascript 在嵌套的listview中使用复选框。父复选框使用JQuery选择所有子复选框,javascript,jquery,listview,checkbox,Javascript,Jquery,Listview,Checkbox,我在父元素和子元素中有一个带有复选框的嵌套listview。我想写一个jquery,在选中父复选框时选中所有子复选框,并且在单独选中所有子复选框时,应该选中父复选框。我无法使用JQuery找到子元素名称。它给我最后绑定的列表的elementId。 以下是代码片段: <div id="div1"> <asp:UpdatePanel runat="server" ID="upQuestionGroup"> <ContentTemplate>

我在父元素和子元素中有一个带有复选框的嵌套listview。我想写一个jquery,在选中父复选框时选中所有子复选框,并且在单独选中所有子复选框时,应该选中父复选框。我无法使用JQuery找到子元素名称。它给我最后绑定的列表的elementId。 以下是代码片段:

<div id="div1">
    <asp:UpdatePanel runat="server" ID="upQuestionGroup">
        <ContentTemplate>

            <asp:ListView ID="lvGroup" runat="server" DataKeyNames="ID">

                <LayoutTemplate>
                    <table ID="tableGroupList">
                        <tr>
                            <th>Choose Questions</th>
                        </tr>
                        <tr runat="server" id="itemPlaceholder"></tr>
                    </table>
                </LayoutTemplate>

                <ItemTemplate>
                    <tr id="QuestionGroupName">
                        <asp:Label runat="server" ID="lblGroupId" Text='<%#Eval("ID") %>' Visible="false"></asp:Label>
                        <td>
                            <asp:Label runat="server" ID="lblQuestionGroup" Text='<%#Eval("Name")%>' />
                        </td>
                        <td>
                           <asp:CheckBox runat="server" ID="chkCrcAuditGroup" onclick="javascript:ChkAllItems(this);" />
                        </td>
                    </tr>
                    <tr id="tableQuestion">
                        <td>
                            <div id="QuestionList">
                                <asp:UpdatePanel runat="server" ID="upQuestionList">
                                    <ContentTemplate>
                                        <asp:ListView ID="lvQuestionList" runat="server" DataKeyNames="ID">
                                            <LayoutTemplate>
                                                <table ID="tableQuestionList">
                                                    <tr runat="server" id="itemPlaceholder"></tr>
                                                </table>
                                            </LayoutTemplate>

                                            <ItemTemplate>

                                                <tr>
                                                    <td>
                                                        <asp:Label runat="server" ID="lblQuestion" Text='<%#eval("question")%>'></asp:Label>
                                                    </td>
                                                    <td>
                                                        <input runat="server" id="chkSelectQuestion" type="checkbox" value='<%#Eval("ID")%>' />
                                                    </td>
                                                </tr>

                                            </ItemTemplate>

                                        </asp:ListView>

                                    </ContentTemplate>
                                </asp:UpdatePanel>
                            </div>
                        </td>
                    </tr>
                </ItemTemplate>

            </asp:ListView>

        </ContentTemplate>
    </asp:UpdatePanel>
</div>
试试这个代码

JavaScript 函数ChkAllItems{ var grdControl=document.getElementById'lvQuestionList'; var grdinput=grdControl.getElementsByTagNameinput; var ChkAll=document.getElementById; 对于变量i=0;i}

如果您包含的不仅仅是代码转储,那么这将是一个更好的答案:
$('.yourClass').click(function(){
                $('input[type=checkbox]').click(function () {
                    // children checkboxes depend on current checkbox
                    $(this).next().find('input[type=checkbox]').prop('checked',this.checked);
                    // go up the hierarchy - and check/uncheck depending on number of children checked/unchecked
                    $(this).parents('ul').prev('input[type=checkbox]').prop('checked',function(){
                        return $(this).next().find(':checked').length;
                    })
                });
            });