$.getJSON异步请求和同步请求
来源:互联网 发布:淘宝网商城首页 编辑:程序博客网 时间:2024/04/30 09:43
先看一段代码:
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>"); } }) }
这段代码的意思是:请求log_analyze.php,每次请求成功后就把J加1,然后再去请求。
打开firebug,可以看到这24条数据是异步执行,所以我log_analyze.php获取到得数据很混乱,没有规律,怎么解决呢?
在执行之前加$.ajaxSettings.async = false; (同步执行)
$.ajaxSettings.async = false;
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>"); } }) }
在for循环之前加一个$.ajaxSettings.async = false; 表示同步执行,这样他就会安装顺序执行了。
下面的是从网上摘过来的:
同时执行多个$.getJSON() 数据混乱的问题的解决
在执行之前加$.ajaxSettings.async = false; (同步执行)
执行你的代码之后及时恢复为$.ajaxSettings.async = true; (异步执行)
不然影响别的地方的需要异步执行的代码。
example:
$.ajaxSettings.async = false;
$.getJSON(url, data, function(data){ });
$.getJSON(url, data, function(data){ });
$.getJSON(url, data, function(data){ });
......
$.ajaxSettings.async = true;
http://www.cnblogs.com/wangkongming/archive/2012/11/19/2777725.html
0 0
- getJSON异步请求和同步请求
- $.getJSON异步请求和同步请求
- $.getJSON设置异步请求和同步请求
- $.getJSON异步请求和同步请求
- $.getJSON异步请求和同步请求
- $.getJSON异步请求和同步请求
- 异步请求和同步请求
- 同步请求和异步请求
- 同步请求和异步请求
- 同步请求和异步请求
- 设置$.getJSON同步请求
- 同步和异步请求
- $.getJSON()异步请求的问题
- 同步请求和异步请求的区别
- 同步请求和异步请求的区别
- 理解同步请求和异步请求
- 异步POST请求和同步请求
- IOS 同步请求和异步请求
- Pronouns 代词
- image and video processing 听课笔记(六)
- 数组排序
- 【iOS知识学习】_iOS开源项目汇总
- android 事件触摸
- $.getJSON异步请求和同步请求
- Java程序打包成jar文件(并使用bat格式的档执行jar包)
- asciidoctor-pdf 可以使用的参数
- Android LayoutInflater详解
- SNIA NVM 峰会: NVDIMMs、编程模型及下一代非易失性存储
- jQuery 使用 $.getJSON() 跨域获取 JSON 数据
- 2015 HNU warm up 03
- ZOOKEEPER安装配置
- AFNetworking与ASIHTTPRequst对比