The spec for the jQuery ajax.error
function是:
error(XMLHttpRequest, textStatus, errorThrown)Function
我正在尝试捕获错误并显示textStatus
,但我无法弄清楚如何只指定textStatus
而不必为{{1}添加变量名称}和XMLHttpRequest
。我的代码目前看起来像这样:
errorThrown
您可以在我的代码中看到我将变量$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: hbAddressValidation.webServiceUrl,
data: this.jsonRequest,
dataType: "json",
timeout: 5,
success: function (msgd) {
//...
},
error: function (a,textStatus,b) {
$("#txtAjaxError").val("There was an error in the AJAX call: "
+ textStatus);
}
});
和a
作为b
函数中第一个和最后一个变量的占位符。我知道在我的成功函数中,我只提供一个参数并且它工作正常,但在这种情况下error
是第一个参数。在data
的情况下,error
是第二个参数,但这是我想要指定的唯一参数。这可能吗?
答案 0 :(得分:4)
在Erlang编程一段时间后,我开始使用“_”作为我不关心的变量的名称。这只是一个像其他任何事情的惯例,但它为我澄清了这样的情况。对于多个参数使用“_”,Javascript似乎没问题。我认为。
答案 1 :(得分:3)
如果您真的想要,可以使用arguments
数组:
error: function () {
var textStatus = arguments[1]; //Zero-based
$("#txtAjaxError").val("There was an error in the AJAX call: "
+ textStatus);
}
然而,这是一个可怕的想法;你应该简单地添加一个未使用的参数。
答案 2 :(得分:1)
没有。最接近的是:
error: function (a,textStatus) {
$("#txtAjaxError").val("There was an error in the AJAX call: "
+ textStatus);
}
只能省略最后的参数