【发布时间】:2009-02-25 07:16:38
【问题描述】:
我的控制器中有一个方法可以在服务器上启动一项工作。我将使用 Ajax 调用 (jQuery) 通过页面上的链接来启动它。这可能需要一段时间,我需要在页面上显示一些状态。我不一定需要“完成 26% ......”,但更多的是显示“工作”或“完成”的状态。
如何让 jQuery 持续拉取作业状态?还是应该换个方式解决?
【问题讨论】:
标签: jquery asp.net-mvc ajax
我的控制器中有一个方法可以在服务器上启动一项工作。我将使用 Ajax 调用 (jQuery) 通过页面上的链接来启动它。这可能需要一段时间,我需要在页面上显示一些状态。我不一定需要“完成 26% ......”,但更多的是显示“工作”或“完成”的状态。
如何让 jQuery 持续拉取作业状态?还是应该换个方式解决?
【问题讨论】:
标签: jquery asp.net-mvc ajax
您将需要某种状态来保存任务和 Javascript 都可以访问的任务状态。例如服务器缓存。假设您使用 TaskComplete 的键。
通过 AJAX 使用 javascript 开始您的任务
当你的任务正在运行时
任务更新服务器缓存项
结束时
平行
使用 Javascript 轮询缓存中的值
通过 AJAX 使用 javascript 开始您的任务
当 Ajax 响应未完成时
等待 2 秒
再次通过ajax调用javascript函数读取Server Cache Item的值
根据其价值执行相关任务
您可能会觉得有用的文章在这里:
【讨论】: