代码:
for(var j=0;j<24;j++){ (jQuery).getJSON('log_analyze.php',{r:Math.random(),logid:logid,op:2,j:j},function(data){ if(data.success_agent){ var width=j*10; $("#up_time_loading").empty().append("<div style="width:"+width+"px;height:10px;border:1px solid #333;background-color:#333"></div>"); } }) }
循环结束,发现结果没有规律 ,由于异步只执行的原因;
在执行之前加$.ajaxSettings.async = false; (同步执行)
$.ajaxSettings.async = false; for(var j=0;j<24;j++){ (jQuery).getJSON('log_analyze.php',function(data){ if(data.success_agent){ var width=j*10; $("#up_time_loading").empty().append("<div style="width:"+width+"px;height:10px;border:1px solid #333;background-color:#333"></div>"); } }) }
在for循环之前加一个$.ajaxSettings.async = false; 表示同步执行,这样他就会安装顺序执行了。
同时执行多个$.getJSON() 数据混乱的问题的解决
在执行之前加$.ajaxSettings.async = false; (同步执行) 执行你的代码之后及时恢复为$.ajaxSettings.async = true; (异步执行) (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|