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

weixin_44171308 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("加载成功..");
                }
            })
        });

页面效果大致如图

...全文
70 点赞 收藏 回复
写回复
回复
切换为时间正序
请发表友善的回复…
发表回复

还没有回复,快来抢沙发~

发动态
发帖子
JavaScript
创建于2007-09-28

8.4w+

社区成员

Web 开发 JavaScript
申请成为版主
社区公告
暂无公告