Итак, я новичок в JQuery и использую Flask, я пытался выяснить, как я могу отправить данные на свой сервер, а затем успешно отправить ответ обратно, однако все, что я пробовал и о чем читал, не дает результатов. Кажется, это не работает.
Что касается того, что я хочу сделать, у меня есть простая HTML-форма с некоторыми входными флажками. Я хотел бы отправить данные формы при отправке на сервер, чтобы я мог управлять ими, а затем отправить ответ. Меня сейчас не слишком беспокоит управление им, я просто хотел выяснить, почему связь между ними не работает. У меня не регистрируется никаких ошибок, но, кажется, ничего не реагирует (поэтому, предположительно, мой JS или Python написан неправильно). В настоящее время в моем коде Python есть строка печати, позволяющая увидеть, достигает ли он этой точки, но, похоже, нет.
Мне интересно, есть ли что-то конкретное, что я делаю неправильно, останавливая запрос работает как надо?
Вот текущая попытка в моем JS-файле:
$(document).ready(function(){
$("#filterform").on("submit", function(e){
e.preventDefault();
var datastring = $(this).serialize();
$.ajax({
type: "GET",
url: "/movies",
data: datastring,
dataType: "json",
success: function(response_data){
console.log(response_data);
},
error: function() {
console.log("request failed");
}
})
});
});
Чтобы продолжить, вот мой app.py:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/movies", methods = ["GET"])
def movies():
print("test")
return request.args()
if __name__ == "__main__":
app.run(debug=True, host="0.0.0.0")
Упрощенная версия моего HTML и CSS для всех, кто хочет ее повторить:
Movie Selection
BOX1
BOX2
BOX3
BOX4
Action
Family
#palette {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
box-sizing: border-box;
background-color: rgb(52, 148, 148);
}
.palette_item {
flex-direction: column;
flex-wrap: wrap;
width:20%;
text-align: center;
background-color: white;
border: 2px solid black;
}
#detailrow {
display:flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
}
#filtersrow {
display: flex;
flex-direction: row;
flex-wrap: wrap;
padding-top:5%;
}
#buttonrow {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
padding-top: 5%;
}
Подробнее здесь: https://stackoverflow.com/questions/709 ... -and-flask