我只是在做一些简单的请求,从ajax到Flask,但这是行不通的。
这是我的basic.html vs js / basic.js代码:
$(document).ready(function(){
$('form').on('submit', function(e) {
$.ajax(type: 'GET', url: '/home/check').done(function(data){
$('#status_id').text("Submitted");
});
e.preventDefault();
});
});
{% extends 'layout.html' %}
{% block main %}
<script src="{{ url_for('static', filename='js/basic.js') }}" charset="utf-8"></script>
<h1 id="status_id"></h1>
<form>
<div class="form-group">
<input type="text" class="form-control" name="url" id = "urlInput" aria-describedby="urlHelp" placeholder="">
<small id="urlHelp" class="form-text text-muted">Enter URL or some message to generate your QR code.</small>
</div>
<button type="submit" class="btn btn-primary">Generate</button>
</form>
<img src="/static/images/new.png" alt="There is no image!">
{% endblock %}
这是我的python代码,我已经注册了一个名为bp_home的蓝图:
bp_home = Blueprint('home', __name__, url_prefix='/home')
@bp_home.route('/check')
def check():
return jsonify({"isValid": "True"})
@bp_home.route('/basic_generator')
def basic_generator():
return render_template('home/basic.html')
上面的代码不起作用,当我提交表单时,它会自动重定向到GET方法,如下所示: http://127.0.0.1:5000/home/basic_generator?url= 有什么建议吗?
答案 0 :(得分:2)
我想我已经解决了。问题是我正在使用引导文档中的jquery.slim.min cdn版本复制,而该文档缺少许多ajax功能。将其更改为jquery.min版本,一切正常。