为什么我不能将命名函数传递给jquery ajax complete选项。这是我的代码:
$.ajax({
type: 'post',
url: baseURL + '/' + controller + '/' + action,
data: params,
success: function(data){
//do something
},
complete: function(jqXHR, textStatus){
checkResponseCode(jqXHR, textStatus);
}
});
我只想写下:"complete:checkResponseCode(jqXHR,textStatus);"
尝试complete: checkResponseCode
您可以缩短代码,但是,行complete: checkResponseCode(jqXHR, textStatus);
实际上调用了方法checkResponseCode
,这显然不是您想要的。
您可以将其简化为:
$.ajax({
type: 'post',
url: baseURL + '/' + controller + '/' + action,
data: params,
success: function(data){
//do something
},
complete: checkResponseCode
});
我有点生疏,但这不管用吗?
$.ajax({
type: 'post',
url: baseURL + '/' + controller + '/' + action,
data: params,
success: function(data){
//do something
},
complete: checkResponseCode
}
});
您可以传递函数名,但这段代码是您调用的函数:
complete: checkResponseCode(jqXHR, textStatus);