0

我在让我的微调器出现在 ajax 帖子上时遇到问题。我尝试了几种不同的方法,但我无法让它显示然后隐藏。如果我使用 showPageLoagingMsg 并且在微调器出现后不隐藏它,但当然不会消失。我不反对任何关于如何让加载程序显示然后隐藏这个 ajax 帖子的建议。

这是我的代码:

var authorizationToken = "Basic " + userId + ":" + password;
    $(document).ready(function () {
        $.ajax({
            type: "POST",
            async: false,
            beforeSend: function (request){ 
             request.setRequestHeader("AUTHORIZATION", authorizationToken);
             //$.mobile.showPageLoadingMsg("a", "Loading"); -- Not working I know its deprecated but I thought I would try it any way
             $.mobile.loading('show', {theme:"a", text:"Please wait...", textonly:false, textVisible: true}); 
            },
            url: url,
            dataType: "xml",
            success: function (xml) {
               //do stuff here
            },
            error: function (x, status, error) {
              //Do more stuff here
            },
       complete: function(){
            $.mobile.loading('hide');
                //$.mobile.hidePageLoadingMsg();
        }
        });
    })

任何建议/解决方案将不胜感激!

4

1 回答 1

0

我为解决这个问题所做的就是将调用放在点击显示上,然后添加一个超时来隐藏它。似乎工作得很好。

 <script type="text/javascript">
       $("#refreshButton").click(function (e) {
         $.mobile.loading('show');
         RefreshDataSubmit(); //Where im doing the ajax post
         setTimeout(function(){
          $.mobile.loading('hide');
         }, 5750);
       });
    </script>
于 2013-07-31T13:22:28.760 回答