django中使用Ajax的跳转问题..

h0tzerapyc 2021-07-21 01:30:19

用django做了个电影推荐的小作业,其中写了一个算法需要运行40+秒,在得到推荐数据后将数据传回前端重新渲染页面。在算法完成前页面就一直没法反应挺难看的,用户体验不好。所以想到利用Ajax做一个加载等待动画。

def UserBasedCf(request):#基于用户推荐
....中间省略
 
    return render(request, "index.html",
                  {'moviedata': mydata, 'moviedata_home': mydata2, 'username': username})
 
 
urlpatterns = [
    path('User/basedCF/',UserBasedCf),
]

虽然能达到等待动画的目的,但是Ajax不能跳转页面,如果用我这种window.location.href跳转的话就会碰到运行两次这个算法的问题,这样花的时间就更多了..请问大佬们有什么好的解决办法吗?

        $("#userCF").click(function(){
            $.ajax({
                url:"/User/basedCF/?username={{ username }}",
                type:"GET",
                success:function(response){
                    window.location.href = "/User/basedCF/?username={{ username }}";
                },
                beforeSend:function(){//等待动画还待添加...
                    $("#msg").text("加载中..");
                },
                complete:function(){
                    $("#msg").text("加载成功..");
                }
            })
        });

页面效果大致如图

...全文
758 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-前端 发布问题, 以便更快地解决您的疑问

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧