我正在一个网站上工作,希望允许我的用户工作而不必单击保存以手动保存其数据(类似于Google Docs允许您无需按保存就可以工作)。我能够通过在JQuery中使用on change事件并在每次该事件发生时使用AJAX将其发布到服务器来实现此目的。唯一的问题是,这导致对服务器的请求很多。如何在减少请求发送到服务器的次数的同时达到相同的结果。
任何帮助将不胜感激!
谢谢!
答案 0 :(得分:0)
您是否考虑过使用计时器?例如,您仍然可以使用on change事件,但是除了在每次更改时都进行传输之外,您还可以开始倒数计时,并且只有在用户没有输入例如10秒钟的时间时,您才进行传输。
答案 1 :(得分:0)
您正在寻找“油门”和“去抖动”的术语。解决方案有很多(例如https://code.google.com/archive/p/jquery-debounce/之类的jQuery插件–免责声明:我已经好几年没有使用jQuery了,因此没有使用该插件的经验),但是要了解一点,这并不难自己实施。如果您使用RxJS(在仍然使用jQuery的项目中不太可能),则其中也包含方法debounce
和throttle
。