0

我使用 jquery 在调用服务器之前显示进度指示器。通话返回后,我隐藏了进度指示器。我注意到的问题是进度指示器永远不会显示并且浏览器窗口会冻结,直到对客户端的调用返回。我该如何防止这种情况。我希望进度指示器在通话进行时进行动画处理。

我正在使用 $.ajax 方法来调用服务器。这是代码。请注意,我没有显示对 $.ajax 的调用,因为它隐藏在调用调用中,但请确保它被调用。

// Show progess indicator while waiting.
var imgAjaxSaving = $("#imgAjaxSaving");
imgAjaxSaving.show();

// Call server
developerServiceProxy.invoke
("SaveAppSpec",
    { "appSpec": appSpec },
    function (result)
    {
      // Hide the progress indicator.
      imgAjaxSaving.hide();
    },
    AjaxError, false, false
);
4

1 回答 1

2

您可以使用异步调用并使用回调函数来隐藏进度条。

看着:

http://api.jquery.com/jQuery.ajax/

此外,确保选项中的 async 等于 true(这是默认设置)。

于 2012-07-19T06:59:58.953 回答