我有两个jQuery的功能。这两个函数都在调用 jQuery ajax。
两者都有属性 async: false。
在这两个函数中,我都根据一些 ajax 响应条件进行重定向。
在第一个函数的成功中,我调用了另一个函数,然后重定向到另一个页面。但是我的第一个函数没有重定向,因为我的第二个函数没有等待第一个函数的响应。
希望问题从我的问题中很清楚。
我的第一个功能如下
function fnGetCustomer() {
function a(a) {
$("#loading").hide();
//on some condition
//other wise no redirection
self.location = a;
}
var b = $("input#ucLeftPanel_txtMobile").val();
"" != b && ($("#loading").show(), $.ajax({
type: "POST",
url: "Services/GetCustomer.ashx",
data: { "CustMobile": b },
success: a,
async: false,
error: function () {
$("#loading").hide();
}
}));
}
我的第二个函数我正在调用第一个函数
function fnSecond() {
$.ajax({
type: "POST",
url: "some url",
async: false,
data: { "CustMobile": b },
success: function(){
fnGetCustomer();
//if it has all ready redirected then do not redirect
// or redirect to some other place
},
error: function () {
$("#loading").hide();
}
}));
}
我正在使用我的第一个功能。所以我不想改变我的第一个功能。