Ajax返回数据之前的loading等待效果

 更新时间:2017年08月08日 14:02:41   作者:Joker37  
我们通过ajax请求,向后台传递参数,然后后台经过一系列的运算之后向前台返还数据,我希望在等待数据成功返还之前可以展示一个loading.gif图。接下来通过本文给大家分享Ajax返回数据之前的loading等待效果,需要的朋友可以参考下

首先,我们通过ajax请求,向后台传递参数,然后后台经过一系列的运算之后向前台返还数据,我希望在等待数据成功返还之前可以展示一个loading.gif图

不废话,在页面上执行点击事件(<a sceneid="@scene.ID" href="javascript:void(0)" rel="external nofollow" onclick="build(this)">生成</a>

调用下面方法:

function build(sender) {
  var jqSender = $(sender);
  var sceneid = jqSender.attr('sceneid');
  $.ajax({
   type: 'post',
   url: "Follow/UpdateUrl",
   data: { sceneid: sceneid },
   beforeSend: function () {
    jqSender.hide().after('<img id="load" src="/images/load.gif" />');
   },
   success: function (data) {
    //根据id和class获取td标签
    $('tbody tr[id=' + sceneid + '] td.wxurl-col').html(data.QRUrl);
    $('tbody tr[id=' + sceneid + '] td.localkey-col').html(data.LocalKey);
    //隐藏生成按钮,插入图片
    var localkey = data.LocalKey;
    jqSender.after('<img src="/image/' + localkey + '" />');
   },
   complete: function () {
    $('#load').remove();
   }
  });
 }

 后台页面就不写了,url中配置了传递到后台的路径,最主要的就是

beforeSend: function () { jqSender.hide().after('<img id="load" src="/images/load.gif" />'); },

这要考虑到ajax异步请求的特点,当ajax执行到url的时候,会有一个线程跳转到后台去执行,

浏览器会增加一个线程(不知道这么说标不标准)继续执行后面的程序,到success: function (data)暂停等待 后台成功的返回数据

这样,before里面插入的图片就相当于是一个loading,当数据成功返回后,把before里面的图片移除,写在complete: function ()语句中。

我后台的处理流程大概是这样的:首先一个http GET请求,获取微信公众平台的access_token,然后再用http POST请求,获取换取微信二维码的ticket

然后再用WebClient方法,把请求到的二维码下载到本地存储,然后就是数据库的增删查改,展示二维码到网页上。

这么一大段才让loading有足够的时间展示出来,如果时间比较短,可以网上查查看有没有定义一个时间,让loading能够完整的显示,免得很突兀。

总结

以上所述是小编给大家介绍的Ajax返回数据之前的loading等待效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Ajax实现省市区三级级联(数据来自mysql数据库)

    Ajax实现省市区三级级联(数据来自mysql数据库)

    这篇文章主要为大家详细介绍了Ajax实现省市区三级级联,数据来自mysql数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • ajax+php中文乱码解决办法

    ajax+php中文乱码解决办法

    ajax+php中文乱码解决办法...
    2007-04-04
  • ajax实现页面的局部加载

    ajax实现页面的局部加载

    这篇文章主要为大家详细介绍了ajax实现页面的局部加载,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • ajax来自动补全表单字段示例

    ajax来自动补全表单字段示例

    这篇文章主要介绍了如何使用ajax来自动补全表单字段,需要的朋友可以参考下
    2014-08-08
  • 面试必备之ajax原始请求

    面试必备之ajax原始请求

    AJAX可以使网页实现异步更新,这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新,下面这篇文章主要给大家介绍了关于ajax原始请求的相关资料,需要的朋友可以参考下
    2021-12-12
  • ajax实现数据分页查询

    ajax实现数据分页查询

    这篇文章主要为大家详细介绍了ajax实现数据分页查询的相关资料,以及ajax实现对数据库的查询,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • Ajax 的初步实现(使用vscode+node.js+express框架)

    Ajax 的初步实现(使用vscode+node.js+express框架)

    这篇文章给大家介绍使用vscode+node.js+express框架操作ajax的初步实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-06-06
  • 使用$.get()根据选项的不同从数据库异步请求数据

    使用$.get()根据选项的不同从数据库异步请求数据

    本例实现的是这样的一个效果:当从select下拉框选择编程语言时时,根据选项的不同,异步请求不同的函数API描述,需要的朋友可以参考下
    2014-04-04
  • 浅析JSONP解决Ajax跨域访问问题的思路详解

    浅析JSONP解决Ajax跨域访问问题的思路详解

    JSONP是一种使用JSON数据的方式,返回的不是JSON对象,是包含JSON对象的javaScript脚本。接下来通过本文给大家介绍jsonp解决ajax跨域访问问题的思路,非常不错具有参考借鉴价值,感兴趣的朋友一起看下吧
    2016-05-05
  • 一句话解决AJAX中文乱码问题[推荐]

    一句话解决AJAX中文乱码问题[推荐]

    写了个通过一般处理程序处理的AJAX小程序 结果遇到了国内程序员遇到的最多的问题:中文乱码
    2008-10-10

最新评论