27

今天听说 jQuery.ajax 函数中的 success-Parameter 已弃用。我理解正确吗?还是我误解了什么?

例如,这在未来将不起作用:

 $.ajax({

            url: 'ax_comment.php',              
            type: 'POST',
            data: 'mode=view&note_id='+noteid+'&open='+open+'&hash='+hash,
            success: function(a) {
            ...

            }   

    });

我必须使用这个?

$.ajax({

            url: 'ax_comment.php',

            type: 'POST',
            data: 'mode=view&note_id='+noteid+'&open='+open+'&hash='+hash,
            success: function(a) {
            ...

            }   

    }).done(function(a){.....};

来源:http ://api.jquery.com/jQuery.ajax/ (向下滚动到弃用通知

4

2 回答 2

63

Ajax 成功回调方法之间有区别:

$.ajax({}).success(function(){...});

以及 Ajax 成功本地回调事件(即 Ajax 参数和属性):

$.ajax({
    success: function(){...}
});

不推荐使用成功回调方法(第一个示例)。但是,成功的本地事件(第二个示例)不是。

本地事件是 Ajax 属性(即参数)。jQuery 文档进一步解释了本地事件 是一个回调,您可以在 Ajax 请求对象中订阅它

因此,将来,您可以执行以下任一操作:

$.ajax({}).done(function(){...});

或者

$.ajax({
    success: function(){...}
});
于 2013-04-04T20:35:30.850 回答
0

是的,从 jQuery 1.8 开始,它已被弃用。您应该使用.done()和使用.fail()来捕获错误。

$.ajax({
    url: 'URL',
    type: 'POST',
    data: { // Your Data },
    datatype: 'json'
})
.done(function (data) { // AJAX Success })
.fail(function (jqXHR, textStatus, errorThrown) { // AJAX Failure });
于 2021-11-21T01:47:31.683 回答