Могу ли я сделать обработку ошибок по умолчанию для всех ajax? - PullRequest
0 голосов
/ 30 октября 2018

Можно ли добавить обработку ошибок по умолчанию ко всем ajax на моем веб-сайте?

Я хочу сделать что-то подобное:

$.ajax({
    type: 'POST',
    url: '<?= isset($insumo) ? $this->url( 'insumo', [ 'action' => 'editar' ] ) : $this->url( 'insumo', [ 'action' => 'criar' ] ) ?>',
    data: dados,
    dataType: 'json',
    success: function( r ) {
        [Code here]
    }, error: function( r ) {
          if( r.status == 302 ) {
                // Redirect to login
          }
    });

Но я не хочу делать это во всех моих функциях ajax (их много в системе).

Есть способ добавить действие по умолчанию с помощью чего-то вроде прототипа javascript, или мне просто создать функцию и вызывать ее в каждом ajax?

1 Ответ

0 голосов
/ 31 октября 2018

Зарегистрировать глобальный обработчик ошибок ajax для jQuery.

$.ajaxError(function() {
  console.log("ajax error");
});


$.ajax({
    type: 'POST',
    url: '<?= isset($insumo) ? $this->url( 'insumo', [ 'action' => 'editar' ] ) : $this->url( 'insumo', [ 'action' => 'criar' ] ) ?>',
    data: dados,
    dataType: 'json',
    success: function( r ) {
        [Code here]
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...