Я не знаю, что такое spring mvc, но в ASP.NET MVC я бы сделал следующее:
Я предполагаю, что все ваши данные в форме, вы даете форме идентификатор, а затем публикуете его:
$(function () {
var timer = 0;
$(this).mousemove(function(e){
timer = 0;
});
$(this).keypress(function() {
timer = 0;
});
window.setInterval(function () {
timer++;
if (timer == 20) {
$('#form').submit(function() {
});
}
}, 1000);
});
Проверяет движение мыши, нажатие клавиши, если это не будет сделано в течение 20 секунд, тогда сохранится форма.
Редактировать: Возможно, вы также можете сделать, после каждого заполненного текстового поля, опубликовать данные: следующим образом:
http://api.jquery.com/change/
$('.textbox').change(function() {
$.ajax({
url: '/Save/Textbox',
data: 'TextBoxId=' + $(this).id + '&TextValue=' + $(this).value
});
});
В этом примере вы создаете контроллер с именем Save, действие с именем Textbox, вы даете текстовому полю идентификатор данных, которые он должен сохранить, и при изменении (после того, как не фокусирует текстовое поле) он отправляет идентификатор текстового поля, и стоимость коробки.
затем в контроллере вы получаете его:
public void SaveText(string TextBoxId, string TextValue) {
// SAVE
}