我可以对所有ajax进行默认错误处理吗?

问题描述 投票:0回答:1

可以在我的网站中为所有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中调用它?

jquery ajax
1个回答
0
投票

为jQuery注册全局ajax错误处理程序。

$.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]
    });
© www.soinside.com 2019 - 2024. All rights reserved.