Для этого вы можете использовать jQuery . В jQuery у вас есть отличный плагин form , который ненавязчиво изменяет существующую форму в ajaxform.
HTML (в JSP):
<form id="myform" action="myservlet" method="post">
<input type="text" name="foo">
<input type="submit">
</form>
<div id="message">${message}</div>
JS ((in) непосредственно в JSP):
$('#myform').ajaxForm({
success: function(message) { $('#message').text(message); }
});
Java ((in) непосредственно в doPost()
методе сервлета за myservlet
):
String foo = request.getParameter("foo");
String message = "You entered 'bar': " + ("bar".equals(foo) ? "yes" : "no");
if ("XMLHttpRequest".equals(request.getHeader("x-requested-with"))) {
// Ajax request.
response.getWriter().write(message);
} else {
// Normal request.
request.setAttribute("message", message);
request.getRequestDispatcher("page.jsp").forward(request, response);
}
Если вы хотите продвинуться дальше, вы можете использовать Gson в Servlet для преобразования полных объектов Java в нотацию объектов Javascript ( JSON ). Таким образом, вы можете получить доступ к данным как в javabean-подобии в Javascript.