Аяксификация формы не нужна.Вы можете просто показать скрытый элемент div во время отправки.До тех пор, пока серверная часть не отправит ответный бит назад, веб-браузер будет отображать начальную страницу.
Вы можете использовать CSS display: none
, чтобы изначально скрыть элемент.Вы можете использовать jQuery.show () , чтобы показать элементы, соответствующие селектору.
<!DOCTYPE html>
<html lang="en">
<head>
<title>SO question 3377468</title>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).ready(function() {
$('#form').submit(function() {
$('#progress').show();
});
});
</script>
<style>
#progress {
display: none;
color: green;
}
</style>
</head>
<body>
<form id="form" action="servlet-url" method="post">
...
<input type="submit">
</form>
<div id="progress">Please wait...</div>
</body>
</html>
Итак, пока вы не используете скриптлетов в JSP для выполнения сложных бизнес-задач, а скорее класс сервлетов, который, в свою очередь, отображает JSP в конце обработки, он будет работать, как вы ожидаете.