0

フォームの onclick イベントを検証する際に問題に直面しています。

フォームを使用していますが、ボタンや送信イベントが含まれていません。ボタンの代わりに を使用するので、ユーザーが をクリックしたときに<a>どのように管理できますか?.valide()<a> </a>

ユーザーがフォームを送信するためにクリックするフォームリンクのコードは次のとおりです。

<a  style="cursor: pointer" class="edit_submit_btn"><?php echo "Update"; ?></a>

jquery コード (正常に動作します):

$(document).on('click','.edit_submit_btn',function(){

)};

しかし、を使用してフォームを検証しようとすると.validate、機能しません。

検証用のコードは次のとおりです。

$('.user_edit').validate({

    onkeyup: false,
    errorClass: 'has-error-text',
    validClass: 'valid',
    rules: {
        "data[PersonMaster][first_name]": {
            required: true
        },
        "data[PersonMaster][last_name]": {
            required: true
        },
        "data[PersonMaster][email_address]": {
            required: true,
            email: true
        },
        "data[PersonMaster][mobile_number_code]": {
            required: true
        },
        "data[PersonMaster][mobile_number]": {
            required: true
        },
        "data[PersonMaster][country_id]": {
            required: true
        }
    },
    messages: {
        "data[PersonMaster][first_name]": {
            required: globalValidations.Modules.addUser.first_name
        },
        "data[PersonMaster][last_name]": {
            required: globalValidations.Modules.addUser.last_name
        },
        "data[PersonMaster][email_address]": {
            required: globalValidations.Modules.addUser.email_address,
            email:globalValidations.Modules.addUser.email_valid
        },
        "data[PersonMaster][mobile_number_code]": {
            required: globalValidations.Modules.addUser.mobile_number_code
        },
        "data[PersonMaster][mobile_number]": {
            required: globalValidations.Modules.addUser.mobile_number
        },
        "data[PersonMaster][country_id]": {
            required: globalValidations.Modules.addUser.country_code
        }
    },
    highlight: function(element) {
        alert("hi");

        $(element).closest('div').addClass("has-error");
    },
    unhighlight: function(element) {

        $(element).closest('div').removeClass("has-error");
    },
    errorPlacement: function(error, element) {

        $(element).closest('div').append(error);
    },
    submitHandler: function(form) {


        $("#loading_main").show();
        var data = $(form).serialize();
         var page_number = $("#page_value").val();

        $.ajax({
            url: site_url + "user_masters/edit_action",
            data: data,
            type: "POST",
            success: function(response) {

                $("#loading_main").hide();
                var response_object = jQuery.parseJSON(response);
                if (response_object.error_code == 0) {
                     UserloadPiece(site_url + "user_masters/user_list/" + (new Date()).getTime() + '/page:' + page_number + '', ".user-content-table-inner", '');
                //                        setTimeout(message_hide("alert", "", "alert-success"), 5000);
                } else if (response_object.error_code == '1') {
                    $("#alert-edit-profile").show();
                    $("#alert-edit-profile").removeClass("alert-success");
                    $("#alert-edit-profile").addClass("alert-danger");
                    $("#alert-edit-profile").html(response_object.message);
                } else if (response_object.error_code == '2') {
                    var i = 0;
                    $.each(response_object.message, function(field, error) {
                        if (field != "null") {
                            $(".has-error-text").empty();

                            $("#" + field + "_validation").closest('div').addClass("has-error");
                            $("#" + field + "_validation").text(error);
                            $("#" + field + "_validation").show();
                            if (i == 0)
                                $("#" + field).focus();
                            i = i + 1;
                        }
                    });
                }
                else if(response_object.error_code == '9'){
                    handle_redirect();
                }
            }
        });
    },
    error: function(jqXHR, textStatus, errorThrown) {
        alert("There is some error while processing your request. please try again later.");
        window.location.href = site_url + 'user_masters/login';
    }
});
4

1 に答える 1

0

フォームIDを使用してフォームを検証するだけです

$('#form_id').validate();

入力フィールドに属性を追加します

data-rule-required=true

カスタムメッセージが必要な場合は、別の属性を追加するだけです

data-msg-required="Your message"

于 2015-09-10T15:10:02.707 に答える