checkboxlist检查功能

时间:2011-06-09 18:50:20

标签: javascript asp.net checkbox

我有CheckBoxList id="cblFiles"CheckBox id="Checkbox1"

我已将checkAll功能添加到CheckBoxList。现在我需要检查的是CheckBoxList中的任何CheckBox是否未选中“Checkbox1”应该是未选中的。

以下代码对我不起作用

function SelectNoneCheckboxes() {
    var elm = document.getElementById("<%=cblFiles.ClientID %>"); 
    for (i = 0; i < elm.childNodes.length; i++) {
        if (elm.childNodes[i].checked == false) {
            document.getElementById("<%=Checkbox1.ClientID %>").checked = false;
        }
    }
}

checkAll功能的代码

function SelectAllCheckboxes(spanChk) {

            var oItem = spanChk.children;
            var theBox = (spanChk.type == "checkbox") ?
        spanChk : spanChk.children.item[0];
            xState = theBox.checked;
            elm = theBox.form.elements;

            for (i = 0; i < elm.length; i++)
                if (elm[i].type == "checkbox" &&
              elm[i].id != theBox.id) {


                if (elm[i].checked != xState)
                    elm[i].click();


            }
        }

2 个答案:

答案 0 :(得分:5)

试试这个

function SelectNoneCheckboxes() {
        var elm = document.getElementById("<%=cblFiles.ClientID %>");
        var checkBoxes = elm.getElementsByTagName("input");
        for (i = 0; i < checkBoxes.length; i++) {
            if (checkBoxes[i].checked == false) {
                document.getElementById("<%=Checkbox1.ClientID %>").checked = false;
            }
        }
    }

服务器代码

protected void Page_PreRender(object sender, EventArgs e)
    {
        CheckBox1.Attributes["onClick"] = "CheckAll(this.checked);";
    }

脚本

 function CheckAll(value) {
        var checkBoxList = document.getElementById("<%= CheckBoxList1.ClientID %>");
        if (value !== true) return;
        var checkBoxes = checkBoxList.getElementsByTagName("input");
        for (i = 0; i < checkBoxes.length; i++) {
            checkBoxes[i].checked = true;
            }
        }

答案 1 :(得分:0)

function SelectNoneCheckboxes() {
                var elm = document.getElementById("<%=cblFiles.ClientID %>");
                var checkBoxes = elm.getElementsByTagName("input");
                for (i = 0; i < checkBoxes.length; i++) {
                    if (checkBoxes[i].checked == false) {
                        document.getElementById("<%=Checkbox1.ClientID %>").checked = false;
                        break;
                    }
                    else {
                        document.getElementById("<%=Checkbox1.ClientID %>").checked = true;
                    }
                }
            }