-1

我希望在已经建立的系统上具有“自动保存”功能,但我无法对其进行很多/剧烈的更改。每次对其中一个输入进行更改时,表单都应该自动保存(也就是提交自身)。我现在拥有它的方式是绑定到每个输入的 onblur 事件,该事件将表单提交到 processing.php,它处理并重定向回带有更新信息的表单。

这很好,效果很好,但会丢失选项卡位置并导致重新加载时出现“闪烁”。有没有一种方法可以在不需要 ajax 或 jquery 的情况下自动保存此表单?将变量保存到 cookie 并在人员离开页面时提交表单?还是别的什么方法?

4

2 回答 2

0

我建议onunload,它会做你想做的事,如果用户离开页面,它会提供调用 JS 函数的机会。

于 2013-01-29T20:21:13.930 回答
0

如果您不介意使用 AJAX 进行自动保存,这里有一个不使用 jQuery 的版本:

setInterval(function() {
    var form = document.getElementById('my-form-id');
    var request = new XMLHttpRequest();
    request.open(form.method, form.action);
    request.send(new FormData(form));
}, 10000);

如果您想发送表单x-www-form-urlencoded而不是multipart/form-data,请在此处查看我的答案:定期自动保存表单

于 2018-08-12T22:57:59.323 回答