首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Django中显示页面重定向时的加载

在Django中显示页面重定向时的加载
EN

Stack Overflow用户
提问于 2012-06-27 08:24:44
回答 2查看 4.3K关注 0票数 0

我不是想要免费搭便车,但我似乎根本不知道该怎么做。

我最近的文章是关于在后台管理工作,但我没有运气这样做。所以..。

  1. 用户在表单中单击run,就会触发作业。
  2. 它大约需要30秒才能完成作业,返回并将Django视图函数告诉return HttpResponseRedirect(....)

所以当页面被重定向时(需要30秒才能发出“继续”的信号).我想向用户展示Ajax加载gif图片。

我还没有实现Ajax,而且系统太复杂了,无法破解。

我们真的可以用javascript来完成这个任务吗?问题是它还没有加载任何页面,因为它需要heavy_work来完成。

代码语言:javascript
运行
复制
result = heavy_work(....)
 .... more code ....
return HttpResponseRedirect(go to this page...)

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2012-06-27 08:32:12

为什么不使用常规ajax调用呢?

javascript

代码语言: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

代码语言:javascript
运行
复制
<div id="loading" style="display:none">
<button onclick="do_heavy_lifting('argument');">
票数 0
EN

Stack Overflow用户

发布于 2012-06-27 08:33:46

使用AJAX很简单:只需在实际的ajax调用之前显示一个' loader‘动画gif,然后在'on_success’响应回调中隐藏加载器gif。

Bu没有AJAX --到目前为止唯一的解决方案是使用迭代器--请看以下内容:How to stream an HttpResponse with Django

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11222131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档