请帮助我解决问题:Flask在表单提交后不想重定向。 代码:
from flask import Flask, render_template, request, redirect, url_for
....
@app.route('/auth/')
def auth():
return render_template('auth.html')
这段代码很好用:),auth.html渲染表单:
{% extends "system.html" %}
{% block content %}
<form id="authen">
<input type="text" id="avtor_sku" pattern="[0-9]{1,13}" maxlength="13" value='' autofocus required>
</form>
{% endblock %}
提交此表格 - 通过js-code:
$(document).ready( function(){$('#authen').submit( function(){ var avtor_sku = $("#avtor_sku").val();
data1= '' + avtor_sku;
$.ajax({type: "GET", url: "/auth_echo/", contentType: "application/json; charset=utf-8",
data: {auth_echo_value: data1}, success: function() {alert(1)}});
return false;});});
此代码中的警报(1) - 工作。 Route / auth_echo /:
@app.route('/auth_echo/', methods=['GET'])
def auth_echo():
return redirect(url_for('openday'))
重定向不起作用。为什么呢?
答案 0 :(得分:4)
您无法在AJAX之后重定向。
如果要重定向,可以执行以下操作:
application/pdf
请注意,假设数据是新网址,但您可以执行 $.ajax({
type: "POST",
url: "http://example.com",
dataType: 'json',
success: function(data){
window.location.href = data;
}
});
至&#34;重定向&#34;