簡體   English   中英

單擊復選框選中列表中的所有復選框

[英]Checking all checkboxes in list by single checkbox click

在我的網頁上,我有一個CheckBoxList和一個復選框。 當我單擊復選框時,應檢查CheckBoxList中的所有復選框。 我的CheckBoxList必須位於Bodycontent占位符下,因為這就是網頁布局的方式,並且我將腳本保存在同一個占位符中。

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<script type="text/javascript">
            function select(ch) {
                var allcheckboxes = document.getElementById('<%=CheckBoxList1.ClientID %>').getElementsByTagName("input");
                for (i = 0; i < allcheckboxes.length; i++)
                    allcheckboxes[i].checked = ch.checked;
            }
        </script>

        <asp:CheckBoxList ID="CheckBoxList1" runat="server" 
            RepeatDirection="Horizontal" RepeatLayout="Flow">
            <asp:ListItem>Item A</asp:ListItem>
            <asp:ListItem>Item B</asp:ListItem>
            <asp:ListItem>Item C</asp:ListItem>
        </asp:CheckBoxList>

            <asp:CheckBox ID="allCheck" onclick="select(this)" runat="server" Text="Select all" />
                <br />
</asp:Content>

以上都沒有做任何事情。 在勾選復選框時沒有任何反應! 我一直堅持這個小問題而且不能做同樣的事情。 有什么建議有什么不對嗎?

將您的函數名稱更改為其他名稱; 它會工作

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<script type="text/javascript">
            function select1(ch) {
                var allcheckboxes = document.getElementById('<%=CheckBoxList1.ClientID %>').getElementsByTagName("input");
                for (i = 0; i < allcheckboxes.length; i++)
                    allcheckboxes[i].checked = ch.checked;
            }
        </script>

        <asp:CheckBoxList ID="CheckBoxList1" runat="server" 
            RepeatDirection="Horizontal" RepeatLayout="Flow">
            <asp:ListItem>Item A</asp:ListItem>
            <asp:ListItem>Item B</asp:ListItem>
            <asp:ListItem>Item C</asp:ListItem>
        </asp:CheckBoxList>

            <asp:CheckBox ID="allCheck" onclick="select1(this)" runat="server" Text="Select all" />
                <br />
</asp:Content>

試試這樣..

function UnCheckAll(isCheck) {
            var theForm = document.forms['yourFormName'];
            if (!theForm) {
                theForm = document.form1;
            }
            var length = theForm.elements.length;
            for (var i = 0; i < length; i++) {
                if (theForm.elements[i].type == "checkbox") {
                    if (theForm.elements[i].id != "allCheck") {
                        if (theForm.elements[i].disabled == false) {
                            theForm.elements[i].checked = isCheck.checked;
                        }
                    }
                }
            }
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM