2

发生的事情是,我已经在开发一个大型应用程序,团队处理发送 Json 响应的服务器端错误的方式error=true (仍然成功 200 次)(我很难改变它以发送不同的状态代码),并且在 ajax 成功时,他们调用相同的函数来使用带有错误消息的对话框进行警告,如果error=true否则执行正常逻辑,

我想要的是在任何成功发生之前使用单个 ajax 事件来挂钩,并首先检查值是否有error=true然后不要调用它的成功处理程序并显示对话框

4

2 回答 2

3

如果. _ success_errorerror=true

例如你可以这样做:

$.ajax(
   success: function(data){
      if (data.error){
         RunErrorCode();
         return;
      }
      //success code...
   },
   error: function(){
      RunErrorCode();
});

function RunErrorCode(){
   alert("An error has occurred");
}
于 2013-02-14T15:09:03.933 回答
1

验证响应的函数:

var hasErrors = function(response) {
  if(response.error) {
    //...
    return true;
  }
};

然后在每次success回调时,调用hasErrors.

$.ajax({
  //...
  success: function(response) {
    if(hasErrors(response)) return;
    //...
  }
})
于 2013-02-14T15:14:07.330 回答