`

js for循环中使用$.post方法

阅读更多

在项目前台中,很多情况会使用到对一个集合进行for循环,然后每一次循环,都要重新请求一次后台,

此时有可能会碰到一种问题,就是for 循环的结果可能少了或者在for循环请求的结果不是正确的结果。这种情况主要原因如下:

该技术博客属于原创文章 ,转载请注明出处:http://www.pm-road.com/index.php/2015/01/12/337/

$.post()属于异步请求,所以在执行for 循环的时候,JS 发送了一个异步的post 请求,但是在该请求还没有返回结果的同时 ,JS继续执行了第二次for 循环,依次类推,有可能js把for 循环都执行完了,第一次的post 请求还没有结束,此时就可能出现种种问题;

 

而解决该问题的办法 就是把post 请求换成同步请求,当post 结束之后,才会进行下一次循环;

但问题又来了,$.post()的格式 为$.post(url,para,function,type)    这四个参数依次为请求url,请求参数,请求回调函数,请求类型,并没有一个参数是设置异步还是同步的,所以,此时就应该换一种请求方 法,$.ajax(); 参数如下:

$.ajax({
type: "POST",
url: url,
 async : false,//是否为同步
data: data,
success: success,
dataType: dataType
});
所以在for循环中使用请求方法,最好使用$.ajax ,而非使用post
分享到:
评论

相关推荐

    transport.js

    冲突的原因是jquery给一个object增加了很多元素,那么在Object.prototype.toJSONString = function () 这个函数中 for (k in this) 语句中进行了无数次的循环,导致网页很卡,并且在IE中会报错。 解决方案: ...

    JavaScript高级教程

    第 1 章 JavaScript 是什么...............................................1 3 1.1 历史简述..............................................1 1.2 JavaScript 实现................................................

    autoJS1688示例.zip

    004-循环for.js 005-循环while.js 0根据图色点击.js 0计分器.js 1(1).js 1.js 1024下载.js 11.js 111.js 11111111111.js 12.js 1233.js 1543275531466-mysl.js 18禁 小撸怡情,大撸伤身.js 190620_...

    jquery插件使用方法大全

    例如,使用了新的jQuery内部Ajax API就可以实现下面的代码了: // Assign handlers immediately after making the request, // and remember the jxhr object for this request var jxhr = $.ajax({ url: "example....

    Java 面试宝典

    4、在 JAVA 中如何跳出当前的多重嵌套循环? .......................................................... 8 5、switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上? .. 9 6、short s1 = ...

    大名鼎鼎SWFUpload- Flash+JS 上传

    然后使用它提供的一组简单的JS事件来更新上传状态,开发人员能够利用这些事件来及时更新页面中的上传进度UI。 SWFUpload v2 SWFUpload v2包含了新的高级功能,改善了稳定性,解决了FlashPlayer中的一些bug,并且...

    《javaScrip开发技术大全》源代码

    • sample22.htm 在嵌套的循环语句中使用break语句 • sample23.htm label语句与break语句相结合 • sample24.htm continue语句 • sample25.htm label语句与continue语句相结合 •...

    jQuery ajax json 数据的遍历代码

    先给大家说下我的需求:进行ajax请求后,后台传递回来以下json数据。 具体实现代码如下所示: JavaScript代码 { data:[ {id:1,name:选择A,value:A}, ...$.ajax({ type: POST, url: xxx.do, dataType : json, // 指定返

    韩顺平PHP JS JQUERY 所有视频下载种子 货真价实

    9-27 7 常用数组的属性及使用方法 9-28 1课程回顾 9-28 2 二维数组的定义使用 数组排序 9-28 3 顺序查找 二分查找 9-28 4 javascript面向对象编程 9-28 5 javascript对象存在形式 9-28 6 javascript类与对象 9-28 7 ...

    (全)传智播客PHP就业班视频完整课程

    9-27 7 常用数组的属性及使用方法 9-28 1课程回顾 9-28 2 二维数组的定义使用 数组排序 9-28 3 顺序查找 二分查找 9-28 4 javascript面向对象编程 9-28 5 javascript对象存在形式 9-28 6 javascript类与对象 9-28 7 ...

    JS学习笔记相关代码-测试代码

    主要是li标签的循环嵌套,浮于上层的列表需要引入jquery-2.1.4.min.js,bootstrap.min.js以使用dropdown等属性实现展开与折叠特性 进度控制, 除了使用<div class="progress-bar progress-bar-success"></div>直接...

    史上最全韩顺平传智播客PHP就业班视频,10月份全集

    9-27 7 常用数组的属性及使用方法 9-28 1课程回顾 9-28 2 二维数组的定义使用 数组排序 9-28 3 顺序查找 二分查找 9-28 4 javascript面向对象编程 9-28 5 javascript对象存在形式 9-28 6 javascript类与对象 9-28 7 ...

    史上最全传智播客PHP就业班视频课,8月份视频

    9-27 7 常用数组的属性及使用方法 9-28 1课程回顾 9-28 2 二维数组的定义使用 数组排序 9-28 3 顺序查找 二分查找 9-28 4 javascript面向对象编程 9-28 5 javascript对象存在形式 9-28 6 javascript类与对象 9-28 7 ...

    史上最全韩顺平传智播客PHP就业班视频,9月份全集

    9-27 7 常用数组的属性及使用方法 9-28 1课程回顾 9-28 2 二维数组的定义使用 数组排序 9-28 3 顺序查找 二分查找 9-28 4 javascript面向对象编程 9-28 5 javascript对象存在形式 9-28 6 javascript类与对象 9-28 7 ...

    vue.js学习相关文件-测试代码

    input 和 textarea 元素中使用 v-model 实现双向数据绑定:test2/inputAndtextarea.html 两个按钮用于切换不同的列表布局:test2/layout.html 导航测试:test2/navigation.html 订单列表:test2/orderList.html 实时...

    JavaScript实战

    3.3.3 for循环 61 3.3.4 do/while循环 63 3.4 函数:把有用的代码转换为可复用的命令 64 3.4.1 小教程 66 3.4.2 给函数提供信息 67 3.4.3 从函数获取信息 69 3.4.4 防止变量冲突 70 3.5 教程:一个简单测验 72 第4章...

    MoAspEnginer MVC框架 v3.1.1.419.zip

    view2.js增加for循环对自定义数据的支持; 优化post和get对数字列表的读取; 优化控制台,可调式多APP; 修复expression解析Empty方法的bug; 优化view2; MoAspEnginer MVC框架简介 MoAspEnginer是一款基于...

Global site tag (gtag.js) - Google Analytics