首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery弃用通知jqxhr.success()

jQuery弃用通知jqxhr.success()
EN

Stack Overflow用户
提问于 2013-07-17 11:01:13
回答 2查看 3.2K关注 0票数 7

我最近在jQuery网站上看到了一个反对意见的通知。

弃用通知: jqXHR.success()、jqXHR.error()和jqXHR.complete()回调将在jQuery 1.8中废弃。要准备代码以便最终删除,请使用jqXHR.done()、jqXHR.fail()和jqXHR.always()。

我目前正在编码如下:

代码语言:javascript
复制
$.ajax({
  url: '...',
  success: function(){
    alert('AJAX successful');
  }
});

我计划使用jQuery 1.8+

我是否应该将success密钥更改为done,如:

代码语言:javascript
复制
$.ajax({
      url: '...',
      done: function(){
        alert('AJAX successful');
      }
    });
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-17 11:07:27

例如,如果您有以下任何一个:

代码语言:javascript
复制
$.ajax({url: '...'}).success(function(){
    alert('AJAX successful');
});
$.ajax({url: '...'}).error(function(){
    alert('AJAX ERROR');
});
$.ajax({url: '...'}).complete(function(){
    alert('AJAX complete');
});

您必须将其更改为:

代码语言:javascript
复制
$.ajax({url: '...'}).done(function(){
    alert('AJAX successful');
});
$.ajax({url: '...'}).fail(function(){
    alert('AJAX ERROR');
});
$.ajax({url: '...'}).always(function(){
    alert('AJAX complete');
});
票数 10
EN

Stack Overflow用户

发布于 2018-10-11 14:35:04

我知道这是个老问题,jQuery 1.8早在很久以前就出现了--但是为了帮助像我这样正在将古老的应用程序升级到3.0的谷歌人,我想我应该提出澄清。

这在版本jQuery 1.8+中是有效的:

代码语言:javascript
复制
$.ajax({
    url: "/api/endpoint",
    type: "POST",
    data: myData,
    success: function(json){
        console.log("success");
        console.log(json);
    },
    error: function(jqxhr){
        console.log("failure");
        console.log(jqxhr.responseText);                    
    }
});

这在版本jQuery 1.8+中无效。它已在3.0中删除:

代码语言:javascript
复制
var promise = $.ajax({
    url: "/api/endpoint",
    data: myData,
    method: "POST"
});
                    
promise.success(function(json){
    console.log("function not defined!"); // same for .error and .complete
});

关于如何解释这个问题,请参见@DevIshOne的答案或jQuery AJAX文档。您只需分别重命名为done()fail()always(),或者按照我的第一个代码块重写代码。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17698060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档