如何使用jquery验证多个下拉列表?

时间:2012-04-16 12:49:59

标签: jquery

我正在尝试在我的usercontrole中验证两个复选框列表。在一些谷歌搜索之后我能够验证我的第一个复选框list.code如下所示

<script language="javascript" type="text/javascript">

function ValidateChkList(source, arguments) {

    arguments.IsValid = IsCheckBoxChecked() ? true : false;
}
function IsCheckBoxChecked() {
    var isChecked = false;
    var list = document.getElementById('<%= cblJobType.ClientID %>');

    if (list != null) {
        for (var i = 0; i < list.rows.length; i++) {
            for (var j = 0; j < list.rows[i].cells.length; j++) {
                var listControl = list.rows[i].cells[j].childNodes[0];
                if (listControl.checked) {
                    isChecked = true;
                }
            }
        }
    }
    return isChecked;
}

<asp:CustomValidator ID="cvJobType" ClientValidationFunction="ValidateChkList" CssClass="error"
                                        SetFocusOnError="True" ValidationGroup="step1" runat="server"></asp:CustomValidator>

但是当我在第二个上尝试相同时,两个都不起作用。任何人帮助我......

1 个答案:

答案 0 :(得分:0)

尝试:

function ValidateChkList(source, arguments) {

    arguments.IsValid = IsCheckBoxChecked() ? true : false;
}
function IsCheckBoxChecked(id) {
    var isChecked = false;
    var list = document.getElementById(id);

    if (list != null) {
        for (var i = 0; i < list.rows.length; i++) {
            for (var j = 0; j < list.rows[i].cells.length; j++) {
                var listControl = list.rows[i].cells[j].childNodes[0];
                if (listControl.checked) {
                    isChecked = true;
                }
            }
        }
    }
    return isChecked;
}

IsCheckBoxChecked('<%= cblJobType.ClientID %>');
IsCheckBoxChecked('<%= second_list.ClientID %>');
IsCheckBoxChecked('<%= third_list.ClientID %>');