在重定向到另一个页面时调用Jquery Ajax异步方法

时间:2014-02-07 13:16:03

标签: jquery asp.net redirect

我有登录页面的Asp:登录控制登录,成功登录后重定向到另一个应用程序。

我正在做两个过程并行。 1)重定向和2)调用jQuery异步Ajax

所以,我正在做 Jquery ajax Asynchronous 调用,在登录之前做一些异步过程(成功方法为我)(我在登录按钮的OnClientClick上设置了ajax调用)。 在登录按钮的服务器端点击事件 重定向到另一个页面(使用Response.redirect())。 当Ajax调用正在调用时,它需要更多时间才能完成,并且在完成之后,我需要更新一些进程。

这是我的问题,我无法获得ajax的Success方法,这意味着 Jquery Ajax Call在重定向时失败

在这里,我无法使用Javascript Windows.load函数进行重定向。

这个或任何建议可以做这个吗?

提前致谢。 抱歉我的英文。

1 个答案:

答案 0 :(得分:1)

当用户点击页面上的提交按钮(例如“登录”)时,所有挂起的AJAX调用都被取消(您可以在浏览器控制台中看到它)。你可以做的是执行同步AJAX调用(浏览器将等待它完成):

jQuery.ajax({
         url:    'YourService',
         success: function(result) {
                      if(result.isOk == false)
                          alert(result.message);
                  },
         async:   false
    });

如果AJAX调用很长,您可以尝试打开新窗口并从中执行AJAX调用。我知道它很乱,但它可能有用。