Функция обратного вызова на движке проверки jquery не работает должным образом - PullRequest
0 голосов
/ 28 января 2012

Я использую плагин jQuery ValidationEngine для проверки формы;сама по себе проверка работает хорошо, однако, когда она завершена, она выводит строку JSON на экран, а не перенаправляет на предыдущую страницу, как ожидалось.Вот код, который я использую:

Вызов механизма проверки:

<script>
    $(function() {
        $("#newForm").validationEngine('attach', {
            ajaxFormValidation: true,
            onAjaxFormComplete: urlValidationCallback,
            onBeforeAjaxFormValidation: deleteAllPrompts
        });
    });
</script>

function urlValidationCallback(status, form, json, options){

    if (status === true) {
        goToURL(json[0][2]);
    }
}

function formSubmit(){
...
if ($success) {           
      $successArray = array();
      array_push($successArray, 'newForm');
      array_push($successArray, true);
      array_push($successArray, "/albums/view/" . $album->id);
      array_push($arrayToJs, $successArray);
   }
echo json_encode($arrayToJs);
}

Но вместо загрузки "/ album / view / ..." экран гаснет и отображаетсяследующее:

[["newForm",true,"\/albums\/view\/13"]]

Может кто-нибудь указать мне, где проблема?

Большое спасибо

1 Ответ

0 голосов
/ 03 февраля 2012

Это поведение отображается механизмом проверки jQuery, когда у вас есть ошибка, синтаксис или что-то еще в вашем javascript. в вашем beforeCall или в вашем ajaxValidationCallback.

Так как вы видите json, вызов был успешным, но затем во время обратного вызова в вашем javascript произошла ошибка, которая сделала невозможным возврат на страницу вызова.

Проверьте консоль JavaScript вашего браузера на наличие ошибок.

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