使用AJAX和ASP.NET MVC显示进程状态

时间:2009-02-25 07:16:38

标签: jquery asp.net-mvc ajax

我的控制器中有一个方法可以在服务器上执行作业。我将使用Ajax调用(jQuery)通过页面上的链接启动它。这可能需要一段时间,我需要在页面上显示一些状态。我不一定需要“26%完成...”,但更多的状态显示“工作”或“完成”。

如何让jQuery不断提取作业状态?或者应该以不同的方式解决?

1 个答案:

答案 0 :(得分:1)

您需要某种状态来保存任务和Javascript都可以访问的任务状态。例如Server Cache。假设您使用TaskComplete的密钥。

使用javascript通过AJAX开启你的任务

当你的任务正在运行时

任务更新服务器缓存项

结束时

<强> 并行

使用Javascript轮询缓存中的值

使用javascript通过AJAX开启你的任务

Ajax响应不完成任务

等待2秒

再次通过ajax调用javascript函数以读取服务器缓存项的值

根据其值

执行相关任务

您可能会觉得有用的文章在这里:

http://msdn.microsoft.com/en-us/magazine/cc163393.aspx