ajax异步和同步提交的区别

开发中用到的ajax请求绝大多数是异步(true)请求
同步提交:async:false ajax执行完才能执行接下来的代码
没有标明async的情况下默认为async为true
('.evaluation-pup').click(function(){ var val; var test;.ajax({
url:"/getUserDriskAessessmentDetails.shtml",
method:'post',
async:false,
data:{},
dataType : "json",
success:function(data){
alert('qqq');
console.log(data["success"]);
//alert(data.dataStr["isAssessment"]);
if(false){ //如果用户进行过风险测试,则直接投资,否则弹窗
alert('xixi');
// form.submit();
val = true;
}else{
alert('测试');
('.risk-assessment-pup').show();('.close-pup').click(function(){
$('.risk-assessment-pup').hide();
})
val = false;
/* function checkForm(){
alert('ssss');
_czc.push(['_trackEvent', '项目详情页', '点击“立即投资”', '项目详情的立即投资', 0, 'subBtn']);
return false;

                        }  */
                    
                        
                    }
                    test = val;
                    alert(test);
                    
                    return test;
                },
                error: function (err) {
                      if (err.status == 403) {       
                          console.log(err)
                      } else if (err.status == 422) {
                          console.log(err)
                      } else if (err.status == 500) {
                          console.log(err)
                      } else {
                          console.log(err)                       
                      }
                  }
               
            })
        alert('aaa');
            // return false;
        return test; 
    })   

异步提交:async:true; ajax没执行完就可以执行下面的代码
('.evaluation-pup').click(function(){ var val; var test;.ajax({
url:"/getUserDriskAessessmentDetails.shtml",
method:'post',
async:false,
data:{},
dataType : "json",
success:function(data){
alert('qqq');
console.log(data["success"]);
//alert(data.dataStr["isAssessment"]);
if(false){ //如果用户进行过风险测试,则直接投资,否则弹窗
alert('xixi');
// form.submit();
val = true;
}else{
alert('测试');
('.risk-assessment-pup').show();('.close-pup').click(function(){
$('.risk-assessment-pup').hide();
})
val = false;
/* function checkForm(){
alert('ssss');
_czc.push(['_trackEvent', '项目详情页', '点击“立即投资”', '项目详情的立即投资', 0, 'subBtn']);
return false;

                        }  */
                    
                        
                    }
                    test = val;
                    alert(test);
                    
                    return test;
                },
                error: function (err) {
                      if (err.status == 403) {       
                          console.log(err)
                      } else if (err.status == 422) {
                          console.log(err)
                      } else if (err.status == 500) {
                          console.log(err)
                      } else {
                          console.log(err)                       
                      }
                  }
               
            })
        alert('aaa');
            // return false;
        return test; 
    })   

你可能感兴趣的:(ajax异步和同步提交的区别)