gpt4 book ai didi

javascript - 了解 jQuery 的 jqXHR

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:33 24 4
gpt4 key购买 nike

我有一组 $.get() 请求,我需要重构它们以包含失败回调。请求的形式是

$.get(url,
{},
function(data) {//success, do work
//work
},'json');//or 'html'

根据jQuery API,我简单的添加了一个jqHXR对象。所以就我而言,我相信我应该这样做

var jqxhr =  $.get(url,
{},
function(data) {//success, do work
//work
},'json').error(function() { alert("error"); });//or 'html'

不明白the example第二次成功回调的原因.我想它可能用于设置回调链。我希望error在错误中执行,success在成功时执行。那么,这是正确的吗?

最佳答案

我认为示例中的第二个成功回调只是为了说明,使用这种语法,您可以为 successerror完成 事件。在标准的 jQuery .ajax() 方法中,您只能为这些事件中的每一个分配一个处理程序。我无法随手想到一个需要多个处理程序的示例,但它确实看起来更清晰一些,更像是标准的 jQuery 惯用语使用

$.get('my_url.php')
.success(handlerOne)
.success(handlerTwo);

代替

$.get('my_url.php', function(data, textStatus, jqXHR) {
handlerOne(data, textStatus, jqXHR);
handlerTwo(data, textStatus, jqXHR);
});

不过,在您的情况下,将 $.get() 语句转换为 $.ajax() 可能会更简单、更清晰。大多数 jQuery 程序员可能更熟悉 $.ajax() 语法,并且由于您不需要其他语法中可用的特殊功能(多个处理程序、请求后处理程序分配),因此有没有理由不使用 $.ajax():

$.ajax({
url: url,
success: function(data) {
// success, do work
},
error: function(data) {
// error, handle failure
},
dataType:'json'
});

关于javascript - 了解 jQuery 的 jqXHR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7638847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com