我想更新jQuery的$ .ajax方法,因此默认超时为20秒,超时后我想调用自己的函数 我还想创建网络错误功能。
这可能吗?
我想这样做是因为我不希望在所有$ .ajax请求中添加超时。
如果您有任何
,请询问 对于每个函数都是这样的,它需要我添加超时。$.ajax(
{
url: "getDuctions.php",
type: "POST",
data: {dept_cd: dept, filter: "payroll_struct_empl_map", primary: "empl_cd"},
beforeSend: function() {
$("#duct").html("<option value=''>Loading</option>");
},
success: function(data) {
$("#duct").html(data);
},timeout:20000,
}
);
答案 0 :(得分:2)
可以使用$.ajaxSetup()
声明默认选项更新:您还可以在ajaxSetup中使用默认函数
$.ajaxSetup({
timeout:20000,
error: function(jqXHR, textStatus, errorThrown){
if( textStatus == 'timeout'){
// Write timeout callback function here...
}
}
});
答案 1 :(得分:1)
$.ajax({
complete: callbackFunction,
url: 'some_url',
type: "POST",
......
timeout: 20000,
error: errorCallback
});
或
$.ajaxSetup({timeout: 20000, error: errorCallback});
错误函数在失败时调用,例如404错误,或者超时时被调用。
你的意思是那样......