Проверка формы jQuery с помощью .bind ('submit') - PullRequest
3 голосов
/ 13 марта 2012

Я пытаюсь получить подтверждение формы и .bind ('submit') (чтобы заменить кнопку submit на спиннер), чтобы хорошо играть вместе.

Мой код JS

    $.metadata.setType("attr", "validate");
    $(document).ready(function() {
        $("#selecttest").validate({
            rules: {
                field: {
                    required: true,
                    email: true
                    }
                }
            });

        $('#selecttest').bind('submit', function() {
            $('#div-loading').show();
            $('#div-submit').hide();
        });

    });

и форма:

<form id="selecttest" method="post"  action="submit.php">
Please enter your Email:
<input type="email" name="email" id="email" style="font-size: 30px;" class="inputtext required email" size="30" onKeyDown="if(event.keyCode==13) event.keyCode=9;" validate="required:true" title=""><br><br>
                <input type="checkbox" name="tos" value="tos" class="required" checked/>I agree to the <a>terms and conditions</a><br>
                <div id="div-loading" style="display:none;">
                    <img src="../images/loading.gif" class="Loading">
                </div>
                <br>
                <div id="div-submit">
                    <INPUT type="submit" value="Submit" class="ButtonSubmit">
                </div>
            </form> 

И обе функции работают очень хорошо независимо друг от друга, я просто не могу понять, как связать вторую (показать / скрыть), поскольку она запускается только после проверки и отправки.

1 Ответ

4 голосов
/ 13 марта 2012

http://docs.jquery.com/Plugins/Validation/validate

$("#selecttest").validate({
    rules: {
        field: {
            required: true,
            email: true
        }
    },
    submitHandler: function(form) {
        $('#div-loading').show();
        $('#div-submit').hide();
        form.submit();
   }
});
...