今天遇到了一个很都疼的问题。在一个函数中调用了JQuery的异步函数$.ajax ,然后在$.ajax函数外之后又有一段Jquery 代码。每次都是在$.ajax之后的代码先执行。
在网上搜了许久 终于找到了原因。拿来和大家分享分享 免得以后忘记了。
async:false
var flag=true;
//async:false代表只有在等待ajax执行完毕后才执行
$.ajax({url:"EmailCheck.ashx",async:false,data: {"email":$("#email").val()} }).done(function(data) {
if(data=="Fail")
{
flag=false;
}
});
if(flag)
{
$("#showInfo").text("");
return true;
}
else
{
alert("该邮箱已存在!");
$("#showInfo").text("该邮箱已存在");
return false;
}</span>
因为对Jquery 一直不是很精通,看来以后得花花时间学习学习了。