问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

有没有方法可以使得前一个ajax请求没有处理完毕前,下一个ajax请求先等待?

发布网友 发布时间:2022-04-23 06:41

我来回答

5个回答

懂视网 时间:2022-04-23 11:03

这次给大家带来多个AJAX如何一起请求等待,多个AJAX一起请求等待的注意事项有哪些,下面就是实战案例,一起来看一下。

下面小编就为大家分享一篇利用JQUERY实现多个AJAX请求等待的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

前言通常,jQuery的函数ajax进行Ajax调用。函数ajax只能做一个Ajax调用。当Ajax调用成功时,执行回调函数。可选地,当Ajax调用返回错误时,调用另一个回调函数。

但是,该功能不能根据这些请求的结果进行多个Ajax请求和注册回调函数。

一种情况是,网页使多个Ajax请求在禁用用户交互时收集页面不同部分的数据。

该页面仅在页面获取所有数据之后才能进行用户交互。本文介绍了jQuery提供的一种基于多个Ajax请求来注册回调函数的方法。

这种方法是基于Deferred对象的概念。相关代码首先,在后台的两个ASP.NET Web API函数来接受服务器Ajax调用。

代码如下:

利用jQuery实现多个ajax请求等待

后台接收

ajax请求代码

要进行单个Ajax调用,可以使用jQuery的ajax函数。正面是一个简单的例子:

利用jQuery实现多个ajax请求等待

ajax调用示例成功和错误的回调函数正在等待单个Ajax调用。jQuery库提供了一种方法来使任何回调函数等待多个Ajax调用。此方法基于称为Deferred的对象。Deferred对象可以根据Deferrred对象是否解决或拒绝来注册回调函数。

以下是Deferred的示例

利用jQuery实现多个ajax请求等待

Deferred示例注意Deferred对象可以链接。以下是Deferred对象链的示例。

利用jQuery实现多个ajax请求等待

Deferred对象有一个方法叫做promise。它返回一个Promise对象。Promise对象暴露了Deferred方法的一个子集,以防止其状态被更改。

这意味着防止Deferred对象被手动解析或拒绝。

Promise对象公开以下Deferred方法:then,done,fail,always,pipe,progress,state,和 promise。

它不会公开以下Deferred方法:resolve,reject,notify,resolveWith,rejectWith 和 notifyWith。promise对象可以被视为一个Deferred对象,该对象无法手动更改该状态。

jQuery 的ajax函数返回一个jqXHR对象。

这个jqXHR对象有两个重要的事实。

首先,一个jqXHR对象是XMLHTTPRequest对象的超集。

例如,一个jqXHR对象可以通过引用它的readyState属性来查询XMLHTTPRequest的状态。

如果其readyState为4,则Ajax请求完成。

其次,一个jqXHR对象实现了Promise接口,并公开了所有的Promise方法。

基本上,一个jqXHR 对象可以被当作一个Promise对象。

例如,done方法可以用作jqXHR对象的成功回调函数。

jQuery库提供了一个被称为when的函数,接受多个Deferred对象并返回一个Promise对象的函数。

当所有Deferred对象被解析时,返回的Promise对象将被解析。当任何Deferred对象被拒绝时,它将被拒绝。

传递给函数的Deferred对象when可以是Deferred对象,Promise对象或jqXHR对象。

以下是等待多个Ajax请求的代码示例

利用jQuery实现多个ajax请求等待

首先,两个变量存储从两个jQuery Ajax调用返回的jqXHR对象。

然后将两个对象传递给函数when。返回的Promise对象when被链接到函数then。

函数then为Promise对象添加了处理程序。

then函数的第一个参数是一个成功函数,当Promise成功时调用它。

then函数的第二个参数是在Promise被拒绝时调用的失败函数。

失败函数检查每个Ajax调用的状态。如果Ajax调用未完成,它将中止。注意,由于页面已执行和关闭,失败函数仍然可以访问超出范围的变量j1和j2 。

这是因为JavaScript关闭。闭包是内部函数,即使外部函数关闭,也可以访问外部函数中的变量。换句话说,内部函数可以保持首先定义的环境。

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

jQuery EasyUI 折叠面板的使用

jQuery EasyUI选项卡面板的tabs使用

jQuery向动态列表添加新元素

图片查看插件Magnify使用详解

热心网友 时间:2022-04-23 08:11

不会有这种问题出现,请理解ajax的原理跟它的运行过程,简单的说ajax就是把服务器端的数据传回去给客户端,它有一个响应的过程响应代码为200还有一个完成数据返回的过程,完成代码为四,ajax本身会处理,所以不必要去担心追问我知道有这几个statues,不过我的担心是,第二个ajax require和第一个ajax require之间本身的关联问题,是本身服务器会一次处理一个请求,还是同时处理多个?例如,当第一个请求处理进度为2的时候,第二歌请求进来,然后第一个到4了,返回。但是第二个请求已经在处理,那么,输出就会有两个,一个是第一个的,一个是第二个的,而这两个之间的输出也就没有关联可言了,因为第二个请求处理的时候并不是按照第一个的输出进行

追答ajax是异步传输的,所以不怕啊。

热心网友 时间:2022-04-23 09:29

给你个思路吧,在一个ajax请求的callback回调事件里进行另一次ajax请求就可以了,也就是第一个执行完了之后再执行另一个 楼上的,人家用的是jq,你用的原生的js,当然要进行判断,如果用jq的话就可以不做判断了追问也就是
$.ajax(
success:function(){
$.ajax();
}
);

可是,每當我keydown的時候,我還是call最外面的$.ajax呀。

热心网友 时间:2022-04-23 11:03

问题补充:本来我写了一个,但是只支持ie,火狐支持,是怎么回事呢? //判断不同浏览器,采用不同方式创建XMLHttpRequest对象 function createXmlHtt

热心网友 时间:2022-04-23 12:55

//判断不同浏览器,采用不同方式创建XMLHttpRequest对象
function createXmlHttpRequest(){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");//windows浏览器
}else if(window.XMLHttpRequest){
return new XMLHttpRequest();//其他浏览器
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
vivox9和x9i有什么区别 ...设置原则跟构造要求。构造柱的设置原则跟构造要求是什么_百度... ...的U型钢筋锚环要几道?在哪里可以找到依据啊 ...月末不含税库存金额1065000元,请计算门店库存天数 公蟹吃什么 公蟹吃什么东西 爬行健身操功能和原理 锻炼爬行的好处有哪些呢 爬行健身法有什么优缺点 檀木如何粘合 成田剑先生还为哪些日本动漫配音,有名一点滴。谢谢了,大神帮忙啊 输液瓶属于什么垃圾、用过的青霉素空瓶属于什么垃圾 油墨空瓶属于什么垃圾 假睫毛胶水是什么垃圾 502胶水是什么垃圾分类 工业胶水是什么垃圾 说一说100的各个数位上的数表示什么意思 到华硕客服清洗一下风扇需要多少时间?多少钱? 清洗笔记本风扇价格 三清玉帝司会是什么意思? 八仙中,有七位神仙称“天尊”,而佛祖只称“世尊”,佛教真的不如道教吗? 中国传统神话中玉帝是天界最高的官吗? 潘师正的人物生平 有兄弟知道哪里可以下载Excel 2019最新版吗?需要mac系统能用的 一些关于自制果冻的问题 迷你世界会在某年下架吗? 是在哪一年呢? 汤小米吖的 迷你号迷你世界 大家都知道哪些很好玩的双人手游? 如何制作迷你世界射出去了还可以收回来果冻? 要点一下游戏就直接进入的直接可以玩的游戏,不要再弹出来网页的,有吗?网址 迷你世界:仲夏夜之梦!果冻爱上小王子,最后的结局太惨了 没有手机如何打电话 怎么在没手机时,用电脑打电话?详情看问题补充,不要没看就回答。 两个手机在无人动的时候给双方互相打电话是怎么回事? 形容词改副词哪些要去点什么哪些直接加ly。 一方砖有多少块? 笛子校音器夹在那里 笛子的校音器长什么样?笛子该怎么校音呢? 调音器长笛调多少hz? 一个页面多个ajax请求延时问题 共享单车公司有哪些 竹笛调音器多少赫兹 关于长笛校音器(调音器)的问题 淮安共享单车有几种 初学者学笛子,有没有必要买调音器? 初学者如何判断吹的音准不准? consequence的用法 as a result 和 as a consequence有什么区别 consequence consequent区别 so, as thus, as a consequence可以互换吗? 表示因果关系的连词、副词、介词短语各有哪些? 这句该怎么翻译啊?