在ajax .done中为函数提供了哪些参数?
我有以下内容:
$.ajax(link.href, { cache: false, dataType: 'html' }) .done(onDialogDone) .fail(onDialogFail);
这工作正常,并调用onDialogDone。 但是,我希望看到哪些参数提供给onDialogDone,以及我期望在onDialogFail中看到什么。
我问的原因是因为我使用的是typescript,我想在定义onDialogDone和onDialogFail时提供正确的参数。
.done()
和.fail()
的参数与相应success:
的参数相同success:
和error:
$.ajax()
函数的参数,即:
.done( function(data, textStatus, jqXHR) { ... } );
和
.fail( function(jqXHR, textStatus, errorThrown) { ... } );
出于textStatus
的目的, textStatus
和errorThrown
是字符串, jqXHR
是一个Object
, data
取决于远程服务器发送给你的内容。
传递给done
处理程序的三个参数是:
data, textStatus, jqXHR
你可以在这里阅读更多内容: http : //api.jquery.com/jQuery.ajax/
-
data
是响应消息 -
textStatus
将始终在done
函数中成功 -
jqXHR
是原始的XMLHttpRequest
看看这个 :
方法(jqXHR和延迟实现的一部分,为清晰起见,此处显示)
.ajax().always(function(a, textStatus, b){});
替换jQuery 1.8中不推荐使用的方法.complete()。 响应成功的事务,参数与.done()相同(即a = data,b = jqXHR),对于失败的事务,参数与.fail()相同(即a = jqXHR,b = errorThrown)。 这是上面完整回调函数的替代构造。 有关实现细节,请参阅deferred.always()。
.ajax().done(function(data, textStatus, jqXHR){});
替换jQuery 1.8中不推荐使用的方法.success()。 这是上面成功回调函数的替代构造。 有关实现的详细信息,请参阅deferred.done()。
.ajax().fail(function(jqXHR, textStatus, errorThrown){});
替换jQuery 1.8中不推荐使用的方法.error()。 这是上面完整回调函数的替代构造。 有关实现的详细信息,请参阅deferred.fail()。
.ajax().then(function(data, textStatus, jqXHR){}, function(jqXHR, textStatus, errorThrown){});
包含.done()和.fail()方法的function。 有关实现的详细信息,请参阅deferred.then()。
.ajax().pipe(function(data, textStatus, jqXHR){}, function(jqXHR, textStatus, errorThrown){});
包含.done()和.fail()方法的function,允许操作底层的Promise。 有关实现的详细信息,请参阅deferred.pipe()。