如何显示“等待页面”当 CGI 运行时?
我有一个 cgi 脚本,在打印 html 之前需要很长时间(30 秒)才能生成结果。我想在显示结果之前显示一个带有动画 GIF 的中间页面,其中显示“正在加载,请稍候...”。 谢谢
I have a cgi script that takes long time (30 sec) to generate the results before printing out the html. I want to show an intermediary page that says "Loading, please wait..." with an animated GIF before displaying the results.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
分叉该进程并在会话中保留对其的引用。然后定期轮询脚本以获取状态更新。
有一个更详细的解释以及最初发表在 Linux Magazine 上的代码示例。 Perl Monks 有进一步讨论。
您可以使用 JavaScript(和 XMLHttpRequest)进行轮询,而不是重新加载整个页面(请记住
Fork the process and keep a reference to it in a session. Then poll the script periodically for a status update.
There is a more detailed explanation with code examples that was originally published in Linux Magazine. Perl Monks has further discussion.
You could use JavaScript (and XMLHttpRequest) to do your polling instead of reloading the whole page (do remember to build on things that work though).
简单的解决方案:制作静态 html 页面,使用加载文本和 gif,并使用 JS 脚本加载 CGI 脚本 XHR。使用 jQuery 这样的库及其 ajax 辅助函数(例如 加载。
Simple solution: Make static html page, with your loading text and gif, and with an JS script loading your CGI script with XHR. It is very simple with libs like jQuery and its ajax helper functions like load.
谢谢大家的帮助,我就是这样做的:
Thanks guys for the help, this what I did: