ajax使用异步问题

使用$.ajax(...)中

async:默认为true,表示异步,具体描述,请查看别的文档

var formData = new FormData($("#dataForm")[0]);
$.ajax({ url:
'myurl...', type: 'POST', data: formData, async: true, cache: false, contentType: false, processData: false, beforeSend:function(){ // 弹出上传等待框,这里是想在上传之前,弹出一个等待框,使上传的过程中,用户不能操作 $("#msgBackgroundWindow").show(); $("#msgWindow").show(); $("#msgContent").html("正在上传..."); }, success: function(returndata) { if(returndata == 1) { $("#msgContent").html("投诉成功,需要等待审核。"); }else{ $("#msgContent").html("投诉失败,原因:XXX"); } }, error: function(returndata) { $("#msgContent").html("请检测网络是否正常"); } });

在上面的例子中,如果async设置为true可以达到效果,如果设置false,则在上传过程中,需要显示的框始终不会弹出,会在浏览器中弹出同步的警告。

原文地址:https://www.cnblogs.com/TheoryDance/p/5570311.html