Ajax在请求过程中显示进度的简单实现

ajax技术在web应用中使用非常频繁,本文以asp.net mvc为示例,提供一种简单的实现方式。ajax在请求过程中显示进度条,是怎么实现的呢?本文通过代码和文字说明相结合的方式分享给大家。

Ajax在Web应用中使用得越来越频繁。在进行Ajax调用过程中一般都具有这样的做法:显示一个GIF图片动画表明后台正在工作,同时阻止用户操作本页面(比如Ajax请求通过某个按钮触发,用户不能频繁点击该按钮产生多个并发Ajax请求);调用完成后,图片消失,当前页面运行重新编辑。以下图为例,页面中通过一个Load链接以Ajax请求的方式加载数据(左)。当用户点击该链接之后,Ajax请求开始,GIF图片显示“Loading“状态,同时当前页面被“罩住”防止用户继续点击Load按钮(中);Ajax请求完成被返回响应的结果,结果被呈现出来的同时,GIF图片和“遮罩”同时消失(右)。

Ajax在请求过程中显示进度的简单实现

源码下载

    在这里我同样以ASP.NET MVC应用为例,提供一种简单的实现方式。我们GIF图片和作为遮罩的

定义在布局文件中,并为它们定制了相应的CSS。其中GIF和遮罩

的z-index分别设置为2000和1000(这个任意,只要能够让遮罩的

遮住当前页面,GIF图片显示在最上层即可)。后者通过设置position、top、bottom、left和right是它可以遮住整个页面,并且将其背景设置为黑色。

  nbsp;html>            @ViewBag.Title                .hide{displaynone }        .progress{z-index }        .mask{position fixed;top ;right ;bottom ;left ; z-index ; background-color #}               ...               

@RenderBody()

      Ajax在请求过程中显示进度的简单实现      

      

登录后复制

然后我们通过如下的代码为jQuery定义了另一个实现Ajax调用的方法ajax2,该方法依然调用$.ajax(options)实现Ajax调用。在ajax2方法中我们将options参数complete属性进行了“封装”,让可以将显示出来的GIF图片和遮罩

隐藏起来。同时覆盖了options的async属性,是之总是以异步方式执行,因为只有这样浏览器才不能被锁住,GIF也才能正常显示。在调用$.ajax(options)进行Ajax请求之前,我们将GIF图片和遮罩

显示出来,并且将其定位在正中央。遮罩

的透明度进行了相应设置,所以会出现上图(中)的效果。

 nbsp;html>            ...                    $(function () {          $.ajax = function (options) {            var img = $("#progressImgage");            var mask = $("#maskOfProgressImage");            var complete = options.complete;            options.complete = function (httpRequest, status) {              img.hide();              mask.hide();              if (complete) {                complete(httpRequest, status);              }            };            options.async = true;            img.show().css({              "position" "fixed",              "top" "%",              "left" "%",              "margin-top" function () { return - * img.height() / ; },              "margin-left" function () { return - * img.width() / ; }            });            mask.show().css("opacity", ".");            $.ajax(options);          };        });              ...  

登录后复制

那么现在进行Ajax调用的时候只需要调用$.ajax2就可以,如下所示的是实例中“Load”链接的click事件的注册代码:

  Load  

   $("#load").click(function () { $.ajax ({ url '@Url.Action("GetContacts")', success function(result) { $("#result").html(result); } }); });

登录后复制

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

jquery通过AJAX从后台获取信息并显示在表格上的实现类

SSH+Jquery+Ajax框架整合

ajax与传统web开发的异同点

以上就是Ajax在请求过程中显示进度的简单实现的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2757692.html

(0)
上一篇 2025年3月8日 07:59:54
下一篇 2025年3月8日 07:59:59

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 详解ajax +jtemplate实现动态分页

    jtemplate是一个基于jquery的模板引擎插件,功能非常强大,有了她你就再不用为使用js绑定数据集而发愁了。本文给大家分享ajax +jtemplate实现动态分页,需要的朋友可以参考下本文 jtemplate是一个基于JQuery…

    编程技术 2025年3月8日
    200
  • Django框架如何使用ajax的post方法

    django是一个开放源代码的web应用框架,由python写成,本文给大家介绍django框架如何使用ajax的post方法,感兴趣的朋友一起来学习学习吧 Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的软…

    编程技术 2025年3月8日
    200
  • ASP.NET与Ajax的实现方式

    ajax 应该不是一项技术,是一种思想而已,跟 asp.net 以及其它 web 开发语言没有什么太大关系,这里只是谈谈 asp.net 中目前使用的 ajax 技术以及其它一些实现 ajax 的优秀框架。感兴趣的朋友一起学习asp.net…

    编程技术 2025年3月8日
    100
  • jquery中的ajax异步上传

    本篇文章给大家介绍jquery中的ajax异步上传,在此需要引入ajaxfileupload.js这个js文件。接下来,有需要的朋友一起学习吧 找了好久终于在网上找到了ajax异步上传文件的方法,不过网上大多数是php的 ,我改为strut…

    编程技术 2025年3月8日
    200
  • jquery中的ajax同步和异步详解

    jquery ajax同步的意思是当js代码加载到当前ajax的时候会把页面里所有的代码停止加载,页面出现了假死状态,当这个ajax执行完毕后才会继续运行其他的代码假死状态解除。而异步的意思是这个ajax代码运行中的时候其他代码一样可以运行…

    编程技术 2025年3月8日
    200
  • Ajax带提示的验证表单实例

    这篇文章主要介绍了ajax带提示的验证表单,可实现对表单输入进行实时提示的功能,非常简单实用,需要的朋友可以参考下 本文实例讲述了Ajax带提示的验证表单。分享给大家供大家参考。具体如下: 这是一个常用的Ajax表单验证程序,实时提示你输入…

    2025年3月8日
    200
  • Ajax实现弹出式无刷新城市选择功能代码

    这篇文章主要介绍了ajax实现弹出式无刷新城市选择功能代码,实例分析了ajax弹出窗口及无刷新选择数据项的相关技巧,需要的朋友可以参考下 本文实例讲述了Ajax实现弹出式无刷新城市选择功能。分享给大家供大家参考。具体如下: 这是一款很棒的全…

    2025年3月8日
    200
  • 双层ajax嵌套(可多层)用法实例

    这篇文章主要介绍了双层ajax嵌套(可多层)用法,实例分析了ajax嵌套的相关使用技巧,可实现多层嵌套的功能,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了双层ajax嵌套(可多层)用法。分享给大家供大家参考。具体如下: fun…

    编程技术 2025年3月8日
    200
  • Ajax上传实现根据服务器端返回数据进行js处理的方法

    这篇文章主要介绍了ajax上传实现根据服务器端返回数据进行js处理的方法,实例分析了ajax请求及java处理并返回服务器端数据请求的相关技巧 本文实例讲述了Ajax上传实现根据服务器端返回数据进行js处理的方法。分享给大家供大家参考。具体…

    编程技术 2025年3月8日
    200
  • ajax遍历xml文档的方法

    这篇文章主要介绍了ajax遍历xml文档的方法,实例分析了jsp结合ajax遍历xml文档的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了ajax遍历xml文档的方法。分享给大家供大家参考。具体分析如下: XMLHtt…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论