由于$.post() 和 $.get() 默认是 异步请求,如果需要同步请求,则可以进行如下使用:
在$.post()前把ajax设置为同步:$.ajaxSettings.async = false;
在$.post()后把ajax改回为异步:$.ajaxSettings.async = true;
demo:
function eachShireInterfaceCallInfo() { $.ajaxSettings.async = false; $.get('/populationDataShow/eachShireInterfaceCallInfo', function (data) { var result = data.data; var html_one = ''; if (result.length > 0) { for (var i = 0; i < result.length; i++) { var orderNum = "01"; if (i < 9) { orderNum = "0" + (i + 1); } else { orderNum = i + 1 + ""; } var shareClass = "population-share population-share" + orderNum; html_one += '<div class="' + shareClass + '">' + '<div class="share-info js-info-handle">' + '<p class="title" style="height: 25px;">' + result[i].interface_name + '</p>' + '<p>调用次数:' + result[i].interface_called_count + '次</p>' + '<p>调用部门数:' + result[i].interface_called_dept_count + '个</p>' + '</div>' + '</div>'; } $('#share_info').empty().html(html_one); } else { $('#share_info').empty(); } }); $.ajaxSettings.async = true; //在上述方法执行完后,再执行下面方法 loopF('.js-info-handle', 4000, 5000); }
参考原文:https://blog.csdn.net/sunnyzyq/article/details/78730894