使用Ajax

时间:2018-11-27 18:51:52

标签: javascript jquery ajax flask

因此,我有一个愚蠢的烧瓶应用程序。索引页面应调用登录路由,然后在条件为True时呈现新页面。我不相信我可以使用重定向。当我运行flask应用程序时,将显示索引页面。自动登录功能可以运行,因为在此示例中,if语句始终为true。

在网页中, 我收到“正在自动登录”警报。 单击确定,然后收到“成功”警报。 我希望login.html页面下一次呈现,但不会。

在终端中, 我马上就从“索引中”中打印出来。 在网页上的警报上单击“确定”后,得到打印输出“登录中”。如预期的那样。您将不得不在这一方面相信我。我想看看该终端的摘要,但是由于我使用的是两个不同的系统,因此出于安全考虑,我不能这样做。

因此,ajax正在运行,并且调用了flask路由/ login。

我希望login.html页面下一个显示。 问题是返回的render_template(“ login.html”)代码未运行。该页面停留在index.html页面上

感谢您的帮助

以下是路线:

@app.route('/')
def index():
     print("In index")
     return render_template('index.html')

@app.route('/login')
def login():
     print("In Login")
     return render_template('login.html')

这是带有javascript的index.html

<body>
<div> Hello world </div>
<script>
function autologin(){
   alert("In autologin");
   $.ajax({
       url: "{{ url_for('login') }}",
        success:function(response){
           alert("success");
        }
   });
}
</script>

{% if True %} 
<script>
   autologin();
</script>
{% endif %}

</body>

和relevent login.html内容

<div class="row">
    Welcome to the login page
</div>

0 个答案:

没有答案