自动将richtextbox中更改的文本保存到数据库
Auto save changed text in richtextbox to database
我在jquery&php。当前的功能就像当用户单击保存按钮时,它会发送一个带有完整数据的ajax请求,以便在数据库(mysql)中更新它。一切都很好。但现在我想在用户输入时只自动保存更改后的文本。我不想在文本更改事件中一次又一次地将整个文本发送到服务器。它应该只发送已更改的文本。
例如:这是保存的文本
当用户继续键入时。这是保存的文本未保存的文本
它应该只能向服务器发送"未保存的文本.."以在数据库中更新。
如何在jquery&服务器端脚本。?有什么想法吗。。?
我认为这不是一个好主意。首先,你为什么想要这个功能?只是为了好玩,我在某个地方看到了它,并认为它会很酷,这并不是真的有效。我看到的一个有效原因是,笔记会很大,而且你不喜欢不断地将它们发送到服务器。但你必须明白,有了一张短信,很难得到一张大纸条。你必须大量打字才能超过1KB。
如果您真的需要它,您必须处理在客户端和服务器上查找更改的问题。在客户身上,你必须发现发生了什么变化(考虑到你花了多少时间思考一个问题,我非常怀疑你能做到这一点)。这不仅仅是在最后添加新的文本。如果有人愿意怎么办:
- 在中间添加文本
- 删除一些文本
- 用另一个字符串替换一个字符串
- 制作多个上面提到的东西
即使你会这样做,当你在服务器上收到这些信息时,你也必须编写一个逻辑来更改数据库中的字段。这将比简单的更新困难得多。
所以我的想法是:不要把事情复杂化。
如果你担心用户会丢失他的更改,并且不想每次用户添加/删除几个字符时都向服务器发送新的草稿,那么可以借助localstorage(html5 localshorage)或cookie将其保存在本地,并在此基础上构建客户端逻辑。
一个选项是使richtextbox成为一个包含简化HTML标记的内容可编辑div,这样当您添加某些内容时,它就会显示在如下的跨度中:
<span class="changed added" data-pos"23">new text</span>
其中data-pos
是插入文本在文本框中的位置,当您删除某个内容时,它会显示在如下的范围中:
<span class="changed deleted">deleted text</span>
这样,当您单击保存时,您只能将更改后的文本$('#richtextbox span.changed')
发送回服务器进行处理。然后服务器可以进行字符串替换,根据需要从数据库中的原始文本中添加或删除文本。
- 如何在外部文档中使用javascript将文本区域的内容保存为变量
- 无法将包含文本和图像的SVG保存到画布
- Angular/Ionic:将所有文本保存在一个单独的文件中
- html表单,它有文本和表,现在我想在一个简单的文本文件中保存和检索数据,如何实现它
- Firefox插件:保存到文本文件的HTTP日志,其中包含时间、用户名、计算机名;t创建文本文件
- Ajax文本区域保存错误
- 如何使用文本框在网站上保存更改
- 如何在不干扰电子邮件通知的情况下将眼镜保存在文本文件中
- 如何调用javascript函数以及将表单数据保存到html页面中的文本文件中
- 本地存储保存和检索文本输入值
- 在<选项>标签之间切换时保存输入文本
- 如何将jQuery克隆的文本输入保存到cookie或html5存储中
- jQuery 将不同的文本保存在使用 jquery filter 提取的同一标签中
- 如何将添加的文本保存到 navigator.notification.prompt 中的新变量
- 在 Internet Explorer 10 中将文本保存在本地文件中
- javascript,php未将文本保存到文件中
- 自动将richtextbox中更改的文本保存到数据库
- 将高亮显示的文本保存为字符串
- 如果JQuery中的$.getJSON不提供德语,请将维基百科文本保存为英语
- 如何将文本保存到文件并再次读取,但在javascript中保存为二进制文件