jquery 的 async 这个属性 默认是true:异步 , false:同步。
那么异步和同步到底有什么区别呢?

异步:异步处理是客户端通过事件触发ajax ,向服务器发送请求,在这个期间无论服务器有没有响应,客户端的其他代码一样可以运行。
同步:同步处理是客户端通过事件触发ajax ,向服务器发送请求,在这个期间客户端不能做任何处理。当ajax执行完毕才会继续执行其他代码。

示例:

 console.log(1);
 var email = "739148774@qq.com";
 $.ajax({
      url:Base.ctx+'/invite/sendMessage.do',
      type:"post",
      async:true,
      dataType:"json",
      data:{
      email:email
      },
      success : function(data){
      console.log(2);
      }
});
console.log(3);

异步控制台输出顺序有可能为: 1->3->2
同步控制台输出顺序一定为:1->2->3


  $.ajaxSettings.async = false;
                      $.post('/api/cksms.php',ckdata,function (data) {
                           // data=$.parseJSON(mytrim(data));
                            if(data.code==1) {   //短信验证不通过
                                $("#tel").removeAttr("readonly");
                                $(yzm).parent().addClass("active");
                                $(yzm).parent().find("span").html("验证码不正确");
                                $(phone).parents("dl").removeClass("amend");
                            } else {
                                $("#tel").attr({ readonly: 'true' });
                                send_data.tel = $(phone).val();  // 添加修改数据
                                $(phone).parents("dl").addClass("amend");
                            }
                        },"json");
                        $.ajaxSettings.async = true;

单独设置

发表评论 已发布 0

还可以输入 800 个字
 
 
打印