Не могу понять, где все идет не так, почти ничего не знаю JQuery
, вероятно, именно поэтому ..
Все, что я пытаюсь сделать, это передать имя пользователя маршруту в application.py
поэтому я могу запросить таблицу пользователей, чтобы попробовать (извините, рифма, что это был длинный день)
html и моя попытка jquery:
{% extends "layout.html" %}
{% block title %}
Register
{% endblock %}
{% block main %}
<form novalidate action="/register" method="post">
<div class="form-group">
<input autocomplete="off" autofocus class="form-control" name="username" placeholder="Username" type="text" id="idUserName">
<small id="idUsername" class="form-text text-muted">
Please enter username
</small>
</div>
<div class="form-group">
<input class="form-control" name="password" placeholder="Password" type="password" id="idPword1" onkeyup='checkLength()'>
<small id="passwordHelpBlock" class="form-text text-muted">
Must be 8-20 characters long
</small>
</div>
<div class="form-group">
<input class="form-control" name="password2" placeholder="Re-enter Password" type="password" id="idPword2" onblur='checkMatch()'>
<small id="password2HelpBlock" class="form-text text-muted">
Passwords need to match
</small>
</div>
<button class="btn btn-primary" type="submit" id="idSubmit">Register</button>
</form>
<script>
// checkUsername
$(document).ready(function() {
$('#username').on('blur', function(event) {
$.ajax({
data : {
userName : $('#username').val(),
},
type : 'POST',
url : '/checkUser'
})
.done(function(data) {
console.log($('#output').text(data.output).show());
});
event.preventDefault();
});
});
</script>
console.log
вышеничего не возвращает ..
Маршрут в application.py
:
@app.route("/checkUser", methods=['POST'])
def checkUser():
get_username = request.form['userName']
return jsonify(output=get_username)