JQuery подтвердите блочную форму отправки - PullRequest
0 голосов
/ 10 марта 2012

Я использую asp.net mvc 3 с ненавязчивой проверкой jquery. У меня есть форма для модели, которая содержит различные обязательные атрибуты и другие аннотации данных.

Я отправляю эту форму, используя jquery, вот так

<script type="text/javascript"> $(document).ready(function() {
    $('form').submit(function(e) {
        e.preventDefault();        

        var user = {
            UserName: $('#@(Html.IdFor(m => m.UserName))').val(),
            Password: $('#@(Html.IdFor(m => m.Password))').val(),
            RememberMe: $('#@(Html.IdFor(m => m.RememberMe))').val(),
            returnUrl: '@Request.Url.PathAndQuery'
        };

        $('#loginform').hide();
        $('#loading').show();

        $.ajax({
            url: '@Url.Action("LogOn", "Account")',
            type: 'POST',
            data: JSON.stringify(user),
            dataType: 'json',
            processData: false,
            contentType: 'application/json;charset=utf-8',
            success: function(data) {
                if (data.returnUrl) {
                    window.location.href = data.returnUrl;
                } else {
                    $("#loginform").replaceWith(data);
                }

            },
            error: function(jqXhr, textStatus, errorThrown) {
                alert("There was an error logging in :'" + jqXhr.status + "' (textStatus: '" + textStatus + "', errorThrown: '" + errorThrown + "')");
            },
            complete: function() {
                $('#loginform').show();
                $('#loading').hide();
            }
        });
    });
}); </script>

Проблема в том, что форма проверена (и будут отображены ошибки для обязательных полей и т. Д.), А затем форма будет отправлена, что вызывает ошибки.

Как мне изменить jquery, чтобы он проверял, что форма действительна перед отправкой?

1 Ответ

0 голосов
/ 11 марта 2012

Вызывает вызов if ($ ('form'). Valid ()), который возвращает true / false, если форма верна

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...