ajax问题
1、
代码:
var i;
for(i=0;i<10;i++){
ajaxServise(i);
}
在for循环中调用ajax方法 补充页面上的数据,这样写是错误的,他不会每执行一次for循环就执行一次ajax方法,而是等for循环结束才去执行ajax方法,所以导致ajax只被执行一次。然而当修改如下:
for(i=0;i<10;i++){
alert("aa");
ajaxServise(i);
}
与上面不同的是在每次调用的时候都弹出一个窗体 alert("内容随意") 这样就可以在页面正确显示内容 而不是一条内容
原因:for循环在JS中是单线程的,他会在for循环结束之后然后执行下一步,一步一步进行实现,而alert切断循环,让程序响应一次,从而再次调用ajax方法,然而在程序当中我们却不能让alert方法出现。
(此方法在前台显示正确,但调用后台数据时仍然为最后一次的值)
解决办法:
var i=0;
var sum=10;
var time;
ajaxServise(i){
if(i==sum){
clearTimeout(time);
}
i=i+1;
time = setTimeout(ajaxServise(),10);
……………………
………………
…………
……
}
这里用setTimeout(AJAX())方法进行调用,setTimeout会当此方法执行完毕然后再次执行AJAX()方法,用setTimeout与clearTimeout配合完美解决此问题。
PS:setTimeout是伪多线程。
2、是否填写是否同步的字段。
3、传递数组数据需要设置
$.ajax({
type:'post',
traditional :true,
url:'${ctx}/discuss/dropMoreRmb',
data:{'dropIds':dropIds},
success:function(data){
refreshRmb(1);
}
});
4、jajax 无法跳转 action,因为当时跳转URL中包含了'_',去掉后可以正常调转
ajax问题的更多相关文章
- jQuery之ajax实现篇
jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...
- Ajax及跨域
概念 Ajax Ajax,Asynchronous JavaScript and XML,字面意思:异步的 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术. 用于异步地去获 ...
- 一个粗心的Bug,JSON格式不规范导致AJAX错误
一.事件回放 今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...
- ABP文档 - Javascript Api - AJAX
本节内容: AJAX操作相关问题 ABP的方式 AJAX 返回信息 处理错误 HTTP 状态码 WrapResult和DontWrapResult特性 Asp.net Mvc 控制器 Asp.net ...
- ajax异步请求
做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...
- 调用AJAX做登陆和注册
先建立一个页面来检测一下我们建立的用户名能不能用,看一下有没有已经存在的用户名吗 可以通过ajax提示一下 $("#uid").blur(function(){ //取用户名 va ...
- Ajax 概念 分析 举例
Ajax是结合了访问数据库,数据访问,Jquery 可以做页面局部刷新或者说是页面不刷新,我可以让页面不刷新,仅仅是数据的刷新,没有频繁的刷页面,是现在比较常用的一种方式做页面那么它是怎么实现页面无刷 ...
- ajax
常见的HTTP状态码状态码:200 请求成功.一般用于GET和POST方法 OK301 资源移动.所请求资源移动到新的URL,浏览器自动跳转到新的URL Moved Permanently304 未修 ...
- 学习笔记之MVC级联及Ajax操作
由于刚转型到MVC,MVC的架构模式很多不是很清楚,比如今天就想做个级联的操作,因为之前的ASP.NET的方式是通过:控件-->添加事件-->后台编写级联事件进行触发,但是这个MVC就不同 ...
- javascript表单的Ajax 提交插件的使用
Ajax 提交插件 form.js 表单的下载地址:官方网站:http://malsup.com/jquery/form/ form.js 插件有两个核心方法:ajaxForm()和ajaxSubmi ...
随机推荐
- cronolog 对 tomcat 7 进行日志切割
一.安装 软件 cronolog-1.6.2.tar.gz tar zxvf cronolog-1.6.2.tar.gz cd cronolog-1.6.2 ./configure && ...
- 函数之DisString
DocStringsPython有一个很奇妙的特性,称为 文档字符串 ,它通常被简称为 docstrings .DocStrings是一个重要的工具,由于它帮助你的程序文档更加简单易懂,你应该尽量使用 ...
- (简单) POJ 2251 Dungeon Master,BFS。
Description You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is co ...
- 原来在ARC下还有这么多不同?!
1.ARC空声明变量 使用ARC的另一个优势是所有未初始化的变量默认都是"空值化"的.这意味着像下面这样的声明使用ARC编译后指向的是空值(nil): NSObject myObj ...
- Laravel 目录结构分析
根目录结构 /app/bootstrap/public/vendorartisancomposer.jsonserver.php 1./app 整个Laravel 目录中最需要我们注意的地方,包含设置 ...
- ucos移植指南
指定堆栈数据类型(宽度) typedef unsigned int OS_STK; 指定Ucos移植方法3中保存cpu状态寄存器的变量的宽度 typedef unsigned int OS_CPU_S ...
- STM32驱动TEA5767收音机模块
Tea5767是飞利浦公司出的一款集成化的收音机芯片,大四的时候机缘巧合遇到了这个芯片,用了一下,写点资料 主要特性 TEA5767HN是一款低功耗立体声收音IC,广泛应用于手机MP3 .MP 4 播 ...
- ADXL345加速度传感器驱动
ADXL345 是 ADI 公司的一款 3 轴.数字输出的加速度传感器.ADXL345 是 ADI 公司推 出的基于 iMEMS 技术的 3 轴.数字输出加速度传感器.该加速度传感器的特点有: ...
- ios-Ineligible Devices 不被识别的设备
此问题大致分为几种: 1.设备不可用,出现Ineligible Devices,如下图: 此错误因为 Xcode的Deployment Target 大于设备的,选择和设备一样 或者 低于设备的.如下 ...
- var d = document.getElementById 错误
var d = document.getElementById; var s = d("demo").innerHTML; alert(s); // IE 没有问题,其他浏览器必须 ...