jquery ajax同步
今天遇到了ajax内部嵌套ajax的情况,这时候我们需要考虑代码的执行顺序问题,异步的操作可能会导致我们无法获得我们需要的结果。这时候我们可以将ajax异步请求转化为同步请求。
同步的含义:
是JS代码加载到当前Ajax的时候会把页面里所有的代码停止加载,页面出现假死的情况,当这个AJAX执行完毕之后才会继续运行其他代码,页面假死情况解除。
同步的属性
async:false;
async
布尔值默认值: true
默认情况下,所有的请求都是异步发送的(例如,默认情况下它被设置为true)。如果您需要同步请求,请将此选项设置为false。请注意,同步请求可能会暂时锁定浏览器,并在请求处于活动状态时禁用任何操作。这个属性可以减小代码运行的顺序问题,但是如果用的次数太多,页面假死的次数太多,这样反而会造成用户体验不佳。
$.ajax({type:"post",url:"path",cache:false,async:false,dateType:($.browser)?"text":"xml",success:function (xmlobj) { }})
success:
如果请求成功,则调用一个函数。该函数传递了两个参数:从服务器返回的数据,根据“dataType”参数格式化,以及描述状态的字符串。这是一个Ajax事件。
async默认的设置值为true,这种情况为异步方式,就是说当ajax发送请求后,在等待server端返回的这个过程中,前台会继续 执行ajax块后面的脚本,直到server端返回正确的结果才会去执行success,也就是说这时候执行的是两个线程,ajax块发出请求后一个线程 和ajax块后面的脚本(另一个线程)例:
$.ajax({ type:"POST", url:"Venue.aspx?act=init", dataType:"html", success:function(result){ //function1()f1(); f2(); } failure:function (result) { alert('Failed'); }, } function2();
在上例中,当ajax块发出请求后,它将停留function1(),等待server端的返回,但同时(在这个等待过程中),前台会去执行function2(),也就是说,在这个时候出现两个线程,我们这里暂且说为function1() 和function2()。
当把asyn设为false时,这时ajax的请求时同步的,也就是说,这个时候ajax块发出请求后,他会等待在function1()这个地方,不会去执行function2(),直到function1()部分执行完毕。
jquery ajax同步相关推荐
- js jquery Ajax同步
Ajax请求默认的都是异步的 如果想同步 async设置为false就可以(默认是true) var html = $.ajax({ url: "some.php", as ...
- ajax请求会阻塞dom,Jquery ajax 同步阻塞引起的UI线程阻塞问题_jquery
最近做一个项目,遇到了一个问题同步ajax引起的ui线程阻塞问题,下面把我的问题解决过程分享给大家. 事情起因是这样的,因为页面上有多个相似的异步请求动作,本着提高代码可重用性的原则,我封装了一个名为 ...
- ajax异步同步加载PHP代码,jquery中的ajax同步和异步详解
jquery ajax同步的意思是当JS代码加载到当前ajax的时候会把页面里所有的代码停止加载,页面出现了假死状态,当这个ajax执行完毕后才会继续运行其他的代码假死状态解除.而异步的意思是这个aj ...
- jQuery.ajax()异步方法的漏洞
2019独角兽企业重金招聘Python工程师标准>>> 在使用jQuery.ajax()异步方法的时候发现一个返回数据混合的漏洞,记录下来分享给大家. 最近在做一个数据统计分析的项目 ...
- 如何让jQuery执行同步而不是异步的Ajax请求?
我有一个提供标准扩展点的JavaScript小部件. 其中之一是beforecreate函数. 它应该返回false以防止创建项目. 我已经使用jQuery在此函数中添加了Ajax调用: before ...
- ppst——技术视频 jquery ajax 请求 同步异步的执行的设置
ppst 技术视频--技术视频 jquery ajax 请求 同步异步的执行的设置:请访问ppst 技术视频分享平台 , www.ppst.cc,上面有最新的技术视频,推荐大家把博客录制成视频吧,可以 ...
- jQuery的Ajax同步和异步
最近的项目用了到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除. 而异步 ...
- jq ajax同步异步,详解JQuery中Ajax的同步与异步
说到ajax同步与异步,可能很多同学对它都不是很了解,接下来我们就Ajax的同步与异步作个简单的介绍.同步:提交请求->等待服务器处理->处理完毕返回这个期间客户端浏览器不能干任何事.异步 ...
- Jquery实现Ajax同步请求
Ajax默认都是异步请求的,很多时候需要用到jquery的同步请求,方法如下: function getUser(){ var postData=$("#userForm").se ...
最新文章
- SEL | 植物通过根系分泌物招募假单孢菌协助抵抗地上部病原菌侵染
- WordPress设计bug+WooCommerce漏洞导致网站存在被劫持风险
- Spring MVC控制器的单元测试:“普通”控制器
- 大型网站核心架构要素--扩展性
- Roguelike游戏的视野算法
- Google 各语言网站合集
- C#面向对象设计模式第二讲:Singleton Pattern单件模式(创建型模式)
- hbase 查询_云HBase发布全文索引服务,轻松应对复杂查询
- CSS 背景 background属性
- ArcGIS中Shapefile和Geodatabase坐标容差的问题
- Django中文无法转换成latin-1编码的解决方案
- 知行之桥®中文版EDI系统正式发布
- Sql Server 的基本增删改查语句
- ArcGIS建立拓扑并检查修改
- Photoshop插件-保存-存为Web所用格式-另存为-脚本开发-PS插件
- input的oninput、onchange与onpropertychange事件
- Android 自带截屏命令 screencap 的使用
- Cox回归+Cox比例风险回归模型
- 配置静态IP失败总结
- 数据中台在企业数字化转型中的践行(上篇)