1

ユーザーコントロールで2つのチェックボックスリストを検証しようとしています.グーグルの後、最初のチェックボックスリストを検証できます.コードを以下に示します

<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>

しかし、2番目のもので同じことをしようとすると、両方が機能しません.誰か助けてくれますか..

4

1 に答える 1

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 %>');
于 2012-04-16T12:52:33.457 に答える