Ajax请求中async:false/true的作用分析
本文实例分析了Ajax请求中async:false/true的作用。分享给大家供大家参考,具体如下:
test.html代码:
<a href="javascript:void(0)" onmouseover="testAsync()">
asy.js代码:
function testAsync(){ var temp; $.ajax({ async: false, type : "GET", url : 'tet.php', complete: function(msg){ alert('complete'); }, success : function(data) { alert('success'); temp=data; } }); alert(temp+' end'); }
tet.php代码:
<?php echo "here is html code"; sleep(5); ?>
async: false,(默认是true);
如上:false为同步,这个 testAsync()方法中的Ajax请求将整个浏览器锁死,只有tet.php执行结束后,才可以执行其它操作。
当async: true 时,ajax请求是异步的。但是其中有个问题:testAsync()中的ajax请求和其后面的操作是异步执行的,那么当tet.php还未执行完,就可能已经执行了 ajax请求后面的操作,
如: alert(temp+' end');
然而,temp这个数据是在ajax请求success后才赋值的,结果,输出时会为空。
更多关于ajax相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》和《asp.net ajax技巧总结专题》
希望本文所述对大家ajax程序设计有所帮助。
相关推荐
-
ajax中的async属性值之同步和异步及同步和异步区别
jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出现假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除.而异步则这个AJAX代码运行中的时候其他代码一样可以运行. ajax中async这个属性,用于控制请求数据的方式,默认是true,即默认以异步的方式请求数据. 一.async值为true (异步) 当
-
jquery ajax属性async(同步异步)示例
例1.jquery+ajax/" target="_blank">jquery ajax同步方式 复制代码 代码如下: $.ajax({url : 'test.php',type : 'post',async: false,//使用同步的方式,true为异步方式data : {'act':'addvideo', 'videoname':videoname},//这里使用json对象success : function(data){//code here...},fail
-
浅谈js的ajax的异步和同步请求的问题
先来看以下代码: var flag=true; var index=0; $.ajax({ url: "http://www.jb51.net/", success: function(data){ flag=false; } }); while(flag){ index++; } alert(index); 请问最后alert的index的结果是多少? 可能有人会说0呗.实际上却没那么简单.大家可以自己试试看.可以看到最终程序进入了一个死循环!怎么会这样呢! 我们在看一段代码: va
-
jQuery ajax 当async为false时解决同步操作失败的问题
jQuery的ajax,当async为false时,同步操作失败.解决方案,jqueryasync 最近做项目遇到jQuery的ajax,当async为false时,同步操作失败的问题,上网搜索下,得到解决办法,这里就说下如何解决: 引发失败时代码: $.ajax({ url : 'your url', data:{name:value}, cache : false, async : true, type : "POST", dataType : 'json/xml/html', s
-
细数Ajax请求中的async:false和async:true的差异
实例如下: function test(){ var temp="00"; $.ajax({ async: false, type : "GET", url : 'userL_checkPhone.do', complete: function(msg){ alert('complete'); }, success : function(data) { alert('success'); temp=data; temp="aa"; } }); a
-
浅谈Jquery中Ajax异步请求中的async参数的作用
之前不知道这个参数的作用,上网找了前辈的博客,在此收录到自己的博客,希望能帮到更多的朋友: test.html <a href="javascript:void(0)" onmouseover="testAsync()"> asy.js function testAsync{ var temp; $.ajax({ async: false, type : "GET", url : 'tet.php', complete: functi
-
jQuery中的ajax async同步和异步详解
项目中有这样一个需求,使用ajax加载数据返回页面并赋值,然后前端取出该值 这其中涉及到代码的顺序问题,有时后台还未返回数据,但已执行后面代码, 所以就会造成取不到值 $.ajax({ type: "post", url: "admin/PfmOptionRuleItem.do", success: function(data){ $("#ruleItem").val(data.ruleItem); //① } }); return $(&quo
-
Ajax请求中async:false/true的作用分析
本文实例分析了Ajax请求中async:false/true的作用.分享给大家供大家参考,具体如下: test.html代码: <a href="javascript:void(0)" onmouseover="testAsync()"> asy.js代码: function testAsync(){ var temp; $.ajax({ async: false, type : "GET", url : 'tet.php', com
-
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
test.html <a href="javascript:void(0)" rel="external nofollow" onmouseover="testAsync()"> asy.js function testAsync(){ var temp; $.ajax({ async: false, //同步请求 type : "GET", url : 'tet.php', complete: function(
-
关于Ajax请求中传输中文乱码问题的解决方案
今天遇到一个问题,有关ajax 请求中传输中文,遇到乱码的问题. 如下代码: function UpdateFolderInfoByCustId(folderId, folderName, custId) { $.ajax({ type: "Post", contentType: "application/x-www-form-urlencoded; charset=utf-8", url: "http://localhost/CRM/Ashx/HandK
-
Ajax请求中的异步与同步,需要注意的地方说明
之前做项目时候,用到一个表格控件,它的数据是异步加载的,我在这个表格绑定数据的函数下面友做了一些业务处理,运行页面的时候,用浏览器在我写业务处理那地方打上断点跟踪,它确实执行了,可以最后显示的时候,它的处理被覆盖了,我很纳闷,当时也知道是这个表格绑定函数那出问题了,可是时间紧,它的函数是封装的,没有去具体跟踪,就直接让我的那部分业务处理延迟200ms执行,这样就好了,这是个笨法,不过也是个有效的办法,呵呵. 后来看了下文档,查了些资料,其实原理应该是这样的: 默认设置下,所有请求均为异步请求.如
-
解决AJAX请求中含有数组的办法
大家应该都发现了当我们发送AJAX请求的数据中带有数组时,是不能像普通JSON数据一样,直接放在data里发送给后台 比如有这样一个数据需要发送给后台: { "orderId": 22, "resourceJson": [ { "carCapacity": 223, "carNumber": "123", "driverInfo": "123", "fail
-
如何从jQuery的ajax请求中删除X-Requested-With
X-Requested-With常用于判断是不是ajax请求 但是有时我们会有需要删除X-Requested-With的情况 下面介绍一种方式 js代码 复制代码 代码如下: $.ajax({ url: 'http://www.zhangruifeng.com', beforeSend: function( xhr ) { xhr.setRequestHeader('X-Requested-With', {toString: function(){ return ''; }}); }, succ
-
ajax请求之返回数据的顺序问题分析
本文实例分析了ajax请求之返回数据的顺序问题.分享给大家供大家参考,具体如下: ajax请求一个url,php后端处理后,数组为如下格式: 复制代码 代码如下: $a = array( '-1'=> 10 ,'-3' => 2, '0' => '5' ,'-2' => 4); 然后使用php的asort函数对数组按照value进行升序排序后,如下: 复制代码 代码如下: $a = array('-3' => 2, '-2' => 4,'0' => '5', '-
-
浅析ajax请求json数据并用js解析(示例分析)
自从接触了jquery就喜欢上了前端开发,而且深深感受到了前端开发的强大与重要之处.同时也想为asp.net鸣不平,事实上asp.net并没有臃肿,说它臃肿的人无非是那些不了解它的人,可能他们看见过一些asp.net低级程序员在不断往页面里拖控件,然后发现生成的页面中含有大量的垃圾代码,而且几乎把所有的逻辑处理都写在了服务器端,觉得服务器压力太大了.事实上,刚入门asp.net的人会有拖控件的习惯,但是当你再深入你会发现,最终asp.net的开发模式还是跟PHP.jsp等其它web开发模式是一样
-
在实战中可能碰到的几种ajax请求方法详解
前言 最近在做一个针对单个节点测速的功能页面,测速的逻辑是,测上传速度时,前端传5m数据给server,记录上传和返回数据的时间,测下载速度时,从server下载1m的数据,记录下载和下载成功的时间,上传和下载用的是ajax同步以避免客户端带宽阻塞的问题,并进行3次取平均值.在开发过程过,因为ajax同步异步的问题,走了不少弯路,特地也把之前遇到的业务逻辑整理汇总一下. ajax请求方法如下 一.普通的ajax,async即同步异步处理,success之后,会有data返回值,status请求状
随机推荐
- AngularJS自定义控件实例详解
- js下判断 iframe 是否加载完成的完美方法
- php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
- WordPress主题中添加文章列表页页码导航的PHP代码实例
- jsp文件操作之读取篇
- C++设计模式之观察者模式
- vue-cli单页应用改成多页应用配置详解
- Android 组件样式定制方法详解
- mysql中RAND()随便查询记录效率问题和解决办法分享
- 关于webpack代码拆分的解析
- ASP.NET FileUpload 上传图片实例
- 使用AJAX返回WebService里的集合具体实现
- 自定义刻度jQuery进度条及插件
- Linux查找包含指定文字的文件(linux查找指定文件)
- Jquery中dialog属性小记
- IE6、IE7中获取Button元素的值的bug说明
- C++中带空格字符串的输入问题解决
- C#中遍历Hashtable的4种方法
- python读取图片的方式,以及将图片以三维数组的形式输出方法
- 每天一个Linux命令之shell单引号和双引号的经典解释