最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ajax在請求過程中顯示進度的簡單實現(xiàn)

 更新時間:2015年09月21日 10:12:01   作者:Artech  
ajax技術在web應用中使用非常頻繁,本文以asp.net MVC為示例,提供一種簡單的實現(xiàn)方式。ajax在請求過程中顯示進度條,是怎么實現(xiàn)的呢?本文通過代碼和文字說明相結合的方式分享給大家。

Ajax在Web應用中使用得越來越頻繁。在進行Ajax調用過程中一般都具有這樣的做法:顯示一個GIF圖片動畫表明后臺正在工作,同時阻止用戶操作本頁面(比如Ajax請求通過某個按鈕觸發(fā),用戶不能頻繁點擊該按鈕產(chǎn)生多個并發(fā)Ajax請求);調用完成后,圖片消失,當前頁面運行重新編輯。以下圖為例,頁面中通過一個Load鏈接以Ajax請求的方式加載數(shù)據(jù)(左)。當用戶點擊該鏈接之后,Ajax請求開始,GIF圖片顯示“Loading“狀態(tài),同時當前頁面被“罩住”防止用戶繼續(xù)點擊Load按鈕(中);Ajax請求完成被返回響應的結果,結果被呈現(xiàn)出來的同時,GIF圖片和“遮罩”同時消失(右)。

源碼下載

    在這里我同樣以ASP.NET MVC應用為例,提供一種簡單的實現(xiàn)方式。我們GIF圖片和作為遮罩的<div>定義在布局文件中,并為它們定制了相應的CSS。其中GIF和遮罩<div>的z-index分別設置為2000和1000(這個任意,只要能夠讓遮罩的<div>遮住當前頁面,GIF圖片顯示在最上層即可)。后者通過設置position、top、bottom、left和right是它可以遮住整個頁面,并且將其背景設置為黑色。

  <!DOCTYPE html>
  <html>
    <head>
      <title>@ViewBag.Title</title>  
      <style type="text/css">
        .hide{displaynone }
        .progress{z-index }
        .mask{position fixed;top ;right ;bottom ;left ; z-index ; background-color #}
      </style>   
      ...
    </head>
    <body> 
      <div>@RenderBody()</div>
      <img id="progressImgage" class="progress hide" alt="" src="@Url.Content("~/Images/ajax-loader.gif")"/>
      <div id="maskOfProgressImage" class="mask hide"></div>
    </body>
  </html>

然后我們通過如下的代碼為jQuery定義了另一個實現(xiàn)Ajax調用的方法ajax2,該方法依然調用$.ajax(options)實現(xiàn)Ajax調用。在ajax2方法中我們將options參數(shù)complete屬性進行了“封裝”,讓可以將顯示出來的GIF圖片和遮罩<div>隱藏起來。同時覆蓋了options的async屬性,是之總是以異步方式執(zhí)行,因為只有這樣瀏覽器才不能被鎖住,GIF也才能正常顯示。在調用$.ajax(options)進行Ajax請求之前,我們將GIF圖片和遮罩<div>顯示出來,并且將其定位在正中央。遮罩<div>的透明度進行了相應設置,所以會出現(xiàn)上圖(中)的效果。

 <!DOCTYPE html>
  <html>
    <head>
      ...
      <script type="text/javascript" src="@Url.Content("~/Scripts/jquery-...min.js")"></script>
      <script type="text/javascript">
        $(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);
          };
        });
      </script>
    </head>
    ...
  </html>

那么現(xiàn)在進行Ajax調用的時候只需要調用$.ajax2就可以,如下所示的是實例中“Load”鏈接的click事件的注冊代碼:

  <a href="#" id="load">Load</a>
  <div id="result"></div>
  <script type="text/javascript">
    $("#load").click(function () {
      $.ajax ({
        url '@Url.Action("GetContacts")',
        success function(result)
        {
          $("#result").html(result);
        }
      });
    });
  </script>

相關文章

  • Ajax請求內嵌套Ajax請求示例代碼

    Ajax請求內嵌套Ajax請求示例代碼

    把全國省市的兩個XML文件整合成一個JSON格式的數(shù)據(jù),就想到了用Ajax嵌套的方法來解決,查找資料,加個async:false這個Ajax參數(shù)就行了
    2014-08-08
  • 關于Ajax的疑難雜癥詳解

    關于Ajax的疑難雜癥詳解

    這篇文章主要給大家介紹了關于Ajax的疑難雜癥,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-03-03
  • 利用AjaxControlToolkit實現(xiàn)百度搜索時的下拉列表提示詳細步驟

    利用AjaxControlToolkit實現(xiàn)百度搜索時的下拉列表提示詳細步驟

    AjaxControlToolkit是一組控件的集合,可以實現(xiàn)自動補充文本框,點擊文本框彈出日歷,加水印等Ajax效果等等,感興趣的朋友可以了解下啊,或許本文對你學習ajax有所幫助
    2013-02-02
  • Ajax中通過JS代碼自動獲取表單元素值的示例代碼

    Ajax中通過JS代碼自動獲取表單元素值的示例代碼

    如果表單元素不多的情況我們常常會通過GET方式來獲取表單元素值,但如果表單元素非常多,此時就需要用POST方式來獲取表單元素值,那么如何來獲取表單元素值呢
    2014-09-09
  • ajax提交數(shù)據(jù)到后臺php接收(實現(xiàn)方法)

    ajax提交數(shù)據(jù)到后臺php接收(實現(xiàn)方法)

    下面小編就為大家?guī)硪黄猘jax提交數(shù)據(jù)到后臺php接收(實現(xiàn)方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Django框架如何使用ajax的post方法

    Django框架如何使用ajax的post方法

    Django是一個開放源代碼的Web應用框架,由Python寫成,本文給大家介紹Django框架如何使用ajax的post方法,感興趣的朋友跟著小編一起來學習學習吧
    2015-09-09
  • Ajax in action 英文版配書源碼 下載

    Ajax in action 英文版配書源碼 下載

    Ajax in action 英文版配書源碼 下載...
    2007-05-05
  • 聊一聊Ajax的優(yōu)缺點

    聊一聊Ajax的優(yōu)缺點

    和大家一起聊一聊Ajax的優(yōu)缺點,Ajax是一個動態(tài)的WEB應用的開發(fā)技術,它的出現(xiàn)豐富了用戶的體驗,今天就和大家進一步的了解Ajax,感興趣的小伙伴們可以參考一下
    2016-02-02
  • ajax無刷新驗證注冊信息示例

    ajax無刷新驗證注冊信息示例

    這篇文章主要為大家詳細介紹了ajax無刷新驗證注冊信息示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • AJax 把拿到的后臺數(shù)據(jù)在頁面中渲染的實例

    AJax 把拿到的后臺數(shù)據(jù)在頁面中渲染的實例

    今天小編就為大家分享一篇AJax 把拿到的后臺數(shù)據(jù)在頁面中渲染的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08

最新評論

张北县| 景宁| 潞西市| 元谋县| 汶上县| 万山特区| 麦盖提县| 潮安县| 桂林市| 中宁县| 海兴县| 罗定市| 平山县| 安多县| 莎车县| 嘉鱼县| 沾益县| 夏津县| 枣强县| 长乐市| 新密市| 东源县| 邛崃市| 大厂| 行唐县| 柏乡县| 泗水县| 阳东县| 耒阳市| 凤凰县| 遂宁市| 睢宁县| 涿州市| 昌乐县| 启东市| 黄骅市| 临澧县| 鄂伦春自治旗| 达日县| 义马市| 东宁县|