自动保存更改的最佳方法

Leo*_*Leo 6 javascript php jquery autosave server

我想删除“保存”按钮并自动保存更改。

我知道可以做到的是使用OnChange函数。

考虑到Web应用程序将被很多人使用,对服务器的请求数量很可能在很短的时间内达到压倒性的水平。

自动保存而不压倒/发送太多请求到服务器的最佳方法是什么?

有两种类型的可编辑字段:

1-简单的领域,将有少量的字母/单词。 在此处输入图片说明

2-文本区域,用于大量复制。 在此处输入图片说明

mad*_*kst 5

就个人而言,我会在半秒钟到一秒钟的时间里反跳。如果用户在指定时间段内停止键入内容,则会执行保存操作。实现起来也很简单:

var debounce = null;
$(document).ready(function() {
    $('.field').keydown(function() {
        clearTimeout(debounce);
        debounce = setTimeout(function(){
            // SAVE
        }, 500);
    });
});
Run Code Online (Sandbox Code Playgroud)


Tre*_*rke 2

这是对您的问题的非代码答案。

没有什么好的方法可以做到这一点。您可以根据 X 个字数进行更新,也可以对每个字符甚至每秒进行更新。问题是有大量的连接。

它占用大量资源和带宽,需要您每次想要保存时都使用互联网连接。那么您对要发送到数据库的内容有疑问吗?

如何检查数据库已有的内容?您只需重新发送整个内容吗?

这些都是您必须回答的问题。但本质上它和现在一样......除了你有某种代码(正如我提到的字符更改、单词更改、时间更改),然后将推送整个文本/字段。或者只是数据库中没有的内容。

所以没有什么好的办法。如果必须这样做,我会将信息存储在本地。然后假设每 30 秒更新一次并仅将更改的字符发送到数据库。