前端发送Ajax请求到服务器,服务器返回数据这一过程,因原因不同耗时长短也有差别,且这段时间内页面显示空白。如何优化这段时间内的交互体验,以及长时间内服务器仍未返回数据这一问题,是我们开发中不容忽视的重点。

常见的做法是:

1、设置超时时间,一旦时间超过设定值,便终止请求;
2、页面内容加载之前,手动增加一个 loading 层。

代码如下:

getAjax: function (method, apiUrl, options, callback) {var xhr = $.ajax({type: method,url: apiUrl,data: options,timeout: 5000, // 设置超时时间 dataType: "json", beforeSend: function (xhr) { $.showLoading(); // 数据加载成功之前,使用loading组件 }, success: function(json) { $.hideLoading(); // 成功后,隐藏loading组件 if(callback && callback instanceof Function === "true") { callback(json); } }, error: function (textStatus) { console.error(textStatus); }, complete: function (XMLHttpRequest,status) { if(status == 'timeout') { xhr.abort(); // 超时后中断请求 $.alert("网络超时,请刷新", function () { location.reload(); }) } } }) }

转载于:https://www.cnblogs.com/zhangruiqi/p/7845592.html

jquery-ajax请求:超时设置,增加 loading 提升体验相关推荐

  1. ppst——技术视频 jquery ajax 请求 同步异步的执行的设置

    ppst 技术视频--技术视频 jquery ajax 请求 同步异步的执行的设置:请访问ppst 技术视频分享平台 , www.ppst.cc,上面有最新的技术视频,推荐大家把博客录制成视频吧,可以 ...

  2. jQuery ajax请求两次问题,jquery ajax请求了两次问题

    页面有一个请求form: 订单编号 用户帐户 发货状态 请选择 未发送 已发送 查询 JavaScript请求部分: function showdatalist() { var username = ...

  3. ajax调用ashx的方法,jquery.ajax请求aspx和ashx的异同 Jquery Ajax调用aspx页面方法

    1.jquery.ajax请求aspx 请求aspx的静态方法要注意一下问题: (1)aspx的后台方法必须静态,而且添加webmethod特性 (2)在ajax方法中contentType必须是&q ...

  4. ajax请求如何判断超时,ajax请求超时判断(转载)

    ajax请求时有个参数可以借鉴一下 var ajaxTimeOut = $.ajax({ url:'', //请求的URL timeout : 1000, //超时时间设置,单位毫秒 type : ' ...

  5. ajax datatype为html,Jquery ajax请求中datatype的含义

    一切从一个普通的前端ajax请求jspringMVC后端的例子开始, 前端jquery ajax 请求: $.ajax({ url: getAbsoluteUrl('score/findScore') ...

  6. Ajax请求如何设置csrf_token

    1. 方式一 通过获取隐藏的input标签中的csrfmiddlewaretoken值,放置在data中发送. $.ajax({url: "/cookie_ajax/",type: ...

  7. ajax 怎么input赋值,jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签...

    jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签 发布于 2016-11-25 16:26:40 | 111 次阅读 | 评论: 0 | 来源: ...

  8. 统一处理jquery ajax请求过程中的异常错误信息的机制

    统一处理jquery ajax请求过程中的异常错误信息的机制 参考文章: (1)统一处理jquery ajax请求过程中的异常错误信息的机制 (2)https://www.cnblogs.com/wi ...

  9. ajax 公共请求头部,ajax请求中全局增加请求头,如常见的token

    加入当前的地址栏中保存的需要增加的请求头为例 url地址为: http://192.168.1.13:8080/demo/index.html?token=c7c8e210-7f07-472d-b88 ...

最新文章

  1. PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]
  2. Vue 2升级 Vue 3初探小细节
  3. hutool 取前12个月_Excel – 创建 12 个月的工资表模板,我只要 20 秒
  4. Linux下TCP/IP优化
  5. SpringSecurity AuthenticationManagerProviderManager
  6. url 微信公众号开发 配置失效_微信公众号开发之授权登录
  7. 网站长尾关键词优化指南
  8. 关于配置文件的节点内容加密(备忘)
  9. 汉诺塔(Hanoi)图解递归算法
  10. HPSocket C++控制台版DEMO
  11. 元素周期表排列的规律_化学元素周期表为什么这样排列,是按照什么规律
  12. Excel插入复选框
  13. 数学_矩阵向量求导公式相关
  14. 临沂一中高考2021成绩查询,2021年临沂高考状元名单公布,临沂高考状元学校资料及最高分...
  15. 机器视觉的9大快速开发库简单介绍
  16. html点按钮展开图片,案例:点击按钮隐藏图片 再次点击显示图片
  17. GPU中实现反距离加权插值(IDW)
  18. 北邮邮箱配置客户端教程(如Windows自带邮件)
  19. (GIS可视化)热点分析原理及实现
  20. 100天单词学习计划

热门文章

  1. 原来AGILE就是这么一回事啊!
  2. Linux环境下的网络编程
  3. apppath php,App.php
  4. 垃圾清理代码_最近弄了个清理电脑C盘的经验
  5. qteewidgetitem添加子节点_行为树的节点
  6. linux系统安装deamonsync,DAEMON Sync的使用心得体会。简易版家庭云服务器!正是我要的那种...
  7. Python压缩目录文件夹,解压目录文件夹及耗时效率统计
  8. Python 打印行列控制(API:pandas.set_option())
  9. OpenCV(项目)车牌识别3 -- 模板匹配
  10. 【Pandas库】(5) 索引操作--增、删