在 Django 中页面重定向时显示加载
Display loading as the page is redirecting in Django
我不是想要求搭便车,但我似乎根本不知道如何做到这一点。
我最近的帖子是关于在后台运行作业的,但我没有运气这样做。所以。。。
- 用户单击窗体内的
run
,它将触发作业。 - 完成作业大约需要 30 秒,返回并告诉 Django 视图函数
return HttpResponseRedirect(....)
。
因此,当页面被重定向时(需要 30 秒来发出"继续前进"的信号)....我想向用户展示像 Ajax 加载 gif 图片一样。
我没有实现Ajax,而且系统太复杂了,无法破解。
我们真的可以用javascript做到这一点吗?问题是它还没有加载任何页面,因为它需要heavy_work
才能完成。
result = heavy_work(....)
.... more code ....
return HttpResponseRedirect(go to this page...)
谢谢!
为什么不使用常规的 ajax 调用?
JavaScript
function do_heavy_lifting(argument) {
$.ajax({
type: 'GET',
data: { argument: argument }, // if necesarry
url: '/heavy_lifting_django_view_url/',
beforeSend: function() {
$('#loading').show();
},
success: function(data) {
...redirect...
},
cache: false
});
}
.html
<div id="loading" style="display:none">
<button onclick="do_heavy_lifting('argument');">
使用 AJAX 很简单:只需在实际的 ajax 调用之前显示一个"加载器"动画 gif,并在"on_success"响应回调中隐藏加载器 gif。
没有AJAX的Bu - 到目前为止唯一的解决方案是使用迭代器 - 看看这个:如何使用Django流式传输HttpResponse。
相关文章:
- 如何在生成下载文件时显示加载动画
- 如何在谷歌字体加载时显示加载图像
- 现在可以在加载addThis时显示加载吗
- 单击时选择2(未选中),显示加载微调器javascript
- 如何在网页加载时显示加载内容,并在页面完全加载时隐藏此内容
- 在弹出窗口中显示加载消息
- 使用jquery/ajax显示加载图像
- 在引导轮播加载之前显示加载微调器
- 是否可以在页面开始加载之前显示加载gif/image
- 单击链接后显示加载程序
- 等待数据时显示加载程序
- 在谷歌地图上显示加载消息
- 只想在页面上未加载初始数据时显示加载gif
- 如何在加载选项卡内容时显示加载图像
- 如何在ajax请求中显示加载微调器
- 当javascript图像转盘加载36个图像时,我可以显示加载指示器吗
- 隐藏/显示加载功能不起作用
- Jquery Chosen插件-通过Ajax动态填充列表时显示加载图标
- 有没有一种方法可以用jQuery捕获JavaScriptPageMethods调用?(显示加载屏幕)
- jquery图片库显示加载程序gif