Я хочу вернуть строку после выполнения моего кода ajax. Вот так выглядит мой код в моем html
:
<script>
(function($){
$('#form').submit(function(event){
var formData = new FormData($("#form")[0]);
event.preventDefault();
$.ajax({
url: "/transform",
type: "POST",
data: formData,
success: function(data){
data
},
});
});
});(jQuery);
</script>
В основном я хочу отобразить строку, которую метод /transform
вернет после завершения, что-то вроде «Готово!», Я хочу видеть это сообщение в localhost:5000
, а не в консоли.
Чтобы выполнить мой код, я получаю доступ к localhost:5000
, однако, когда отображается сообщение, возвращаемое /transform
, URL-адрес localhost:5000/transform
, что заставляет меня думать, что ajax не работает.
Насколько я прочитал, с помощью Ajax мой код выполняется асинхронно, поэтому он не может автоматически получить доступ к возвращению /transform
. Я читал об обратных вызовах, но все еще не понимаю, как я могу его использовать, я очень новичок в этом (я начал вчера, и я впервые использую html и js).
Я также проверил этот вопрос и ответ Как я могу вернуть ответ от асинхронного вызова? но все же я не вижу, как вставить в мой код обратный вызов, о котором они говорят.
Есть ли способ сделать это?
Это HTML-код, который я использую:
<html>
<body>
{% block content %}{% endblock %}
<div class="container">
<div class="col-md-6 center">
<div class="panel panel-default">
<div class="panel-body">
<form accept-charset="UTF-8" role="form" action="/transform" method="post" enctype="multipart/form-data" id="form" >
<div class="panel-heading">
<h3 class="panel-title" style="text-align:center">Select a file</h3>
</div>
<fieldset>
<div class="form-group">
<input class="form-control" type="file" name="data_file" />
</div>
<input class="btn btn-lg btn-success btn-block" type="submit" name="submit" id="submit" value="Submit" placeholder="submit"/>
</fieldset>
</form>
</div>
</div>
</div>
</div>
</body>
</html>