永利402com官方网站ajax函数外的1段代码的执行顺序

永利402com官方网站

今天遇到了一个很都疼的问题。在一个函数中调用了JQuery的异步函数$.ajax
,然后在$.ajax函数外之后又有一段Jquery
代码。每次都是在$.ajax之后的代码先执行。

因为默认ajax是异步的,也就是在未响应到结果时不影响向下的执行。所以必须采用回调的方式来实现。这种方案效率更高。

在网上搜了许久 终于找到了原因。拿来和大家分享分享 免得以后忘记了。

如果非要返回结果的话,将ajax 中的参数 async 改为
false,即为同顺序执行,如下实现,即可返回到结果。

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; 
}

复制代码 代码如下:

因为对Jquery 一直不是很精通,看来以后得花花时间学习学习了

function(url,params){
var outdata;
$.ajax({
type : “get”,
async:false,
dataType:”json”,
url : url,
data: params,
success : function(data){
outdata = data;
},
error:function(e){
alert(‘ajax error’);
}
});

您可能感兴趣的文章:

  • jQuery中通过ajax的get()函数读取页面的方法
  • Jquery版本导致Ajax不执行success回调函数
  • jquery中ajax函数执行顺序问题之如何设置同步
  • jquery
    ajax的success回调函数中实现按钮置灰倒计时
  • jquery的ajax()函数传值中文乱码解决方法介绍
  • jQuery Tips
    为AJAX回调函数传递额外参数的方法
  • jQuery
    AJAX回调函数this指向问题
  • 详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())

return outdata;
}

您可能感兴趣的文章:

  • jQuery Ajax Post
    回调函数不执行问题的解决方法
  • Jquery版本导致Ajax不执行success回调函数
  • jquery
    ajax的success回调函数中实现按钮置灰倒计时
  • jQuery Tips
    为AJAX回调函数传递额外参数的方法
  • jQuery
    AJAX回调函数this指向问题
  • 使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
  • jquery ajax
    向后台传递数组参数示例
  • Jquery中ajax方法data参数的用法小结
  • 浅析jQuery
    Ajax请求参数和返回数据的处理
  • jQuery实现ajax回调函数带入参数的方法示例

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图