Как вызвать validationEngine с $ .ajax submit? - PullRequest
3 голосов
/ 26 марта 2012

Я использую встроенную функцию для отправки формы, но она не вызывает скрипт проверки, который у меня есть, и я подумал, может ли кто-нибудь указать мне правильное направление ответа?

Моя кнопка:

<a href="javascript:UpdateEnquiry();" id="continue_btn" class="btnSprite">Save</a>

Моя функция:

function UpdateEnquiry() {

$.ajax({
  url: 'test.php',
  dataType: 'xml',
  timeout: 15000,
  type: 'post',
  data: $('#validate').serialize(),
  success: UpdateEnquirySuccess,
  error: function (result) {parent.$.fancybox.close();}
  });
}

И я хотел бы инициализировать плагин jquery validationEngine перед отправкой. http://www.position -absolute.com / статьи / JQuery форм-валидатор-потому-формы валидация-это-беспорядок /

Любая помощь будет принята с благодарностью.

С уважением Rachel

Ответы [ 2 ]

4 голосов
/ 27 марта 2013
$('#registerform').submit(function(e) {
                e.preventDefault();
                var vars = $("#registerform").serialize();

                if ($("#registerform").validationEngine('validate')) {

                    $.ajax({
                            url:"sample.php"
                    });

                }
            });

без остановки действия по умолчанию я перенаправлял на страницу действия формы. Так что пришлось использовать protectdefault (). @mgibsonbr мой плохой

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

Если ваш механизм проверки уже инициализирован, вызовите метод validate перед выполнением запроса ajax. Если этот метод возвращает true, вы продолжаете:

function UpdateEnquiry() {
    if ( $(yourForm).validationEngine('validate') ) {
        $.ajax({
            ...
        });
    }
    else {
        // The form didn't validate
    }

    return false; // Prevents default action from happening
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...