如何正确处理jquery ajax成功与失败

时间:2014-07-06 12:28:39

标签: javascript jquery ajax error-handling

所以我有一个像这样的jquery ajax调用:

$.ajax({
     url: 'delete.php', 
     data : {
          'prd_id': <prd-id-number>
     },
     success: function(data) {
          //show success here
     },
     error : function(error) {
          //show error here
     }
 });

我怀疑successerror handlers。错误处理程序仅用于"ajax level"错误吗?我的意思是 - 我的应用程序可能有自己的错误,例如。传递的产品ID不存在或不正确。现在,我正在传递一条消息,进入success()然后我必须做一些内部逻辑来查看消息是应用程序错误还是真正成功 - 并且基于我显示消息。< / p>

有什么方法可以将邮件发送到error() - 这是捕获和处理ajax错误的正确方法吗?

2 个答案:

答案 0 :(得分:2)

Ajax错误可以通过几种不同的方式触发。最常见的是,http状态不是200,超时和数据解析错误,例如格式不正确的json。

您可以通过返回http响应代码标头从服务器自行触发错误。

例如,假设您有一个按ID查找用户并发送无效ID的API。您可以返回404响应代码标头,其中包含可在错误回调中在您的应用中使用的数据。

这允许您使用错误回调

设置应用程序代码以处理这两种类型的错误

答案 1 :(得分:0)

我认为你需要回忆一些概念。

根据axaj调用发送的成功或失败,调用ajax成功和错误处理程序。

每当ajax调用成功完成时都会调用

成功处理程序,而只要由于任何类型的错误而无法完成ajax调用,就会调用错误处理程序。

对于您的情况,您将必须操纵成功处理程序并显示所需的消息。

成功完成ajax调用后,无法调用错误处理程序。