我有这个ajax:
$.ajax({
type: "POST",
cache: false,
url: 'update_db.php',
beforeSend: function(){
$.ajax({
type: "POST",
cache: false,
async: "false",
dataType: "json",
url: 'check_db.php',
success: function(data){
var nowmod = new Date();
var lastmod = new Date(data[0].lastmod_date);
if(nowmod > lastmod){
//abort here the first ajax call and
//reload the page after 2.5 sec
setTimeout(function(){
location.reload();}, 2500);
}
}
});
},
success: function(data){
alert("success");
}
});
我试图将第一个ajax放在JS var中并调用
var.abort();
另外,我试过
return false
在所有情况下,第一次ajax呼叫的成功事件正在起作用:警告“成功”!
我在Stackoverflow上看到了
的案例beforeSend : function(xhr, opts){
if(1 == 1) //just an example
{
xhr.abort();
}
},
我的问题是我必须在中止ajax调用之前检查数据库。 欢迎任何建议。感谢。
答案 0 :(得分:1)
您过度复杂,只需向update_db.php
发送一个ajax请求,并在check_db.php
内执行update_db.php
逻辑。