Javascript 离开页面后是否保留textarea内容?
我有一个简单的textarea输入元素:Javascript 离开页面后是否保留textarea内容?,javascript,jquery,html,session,Javascript,Jquery,Html,Session,我有一个简单的textarea输入元素: <textarea name="comment" id="comment"></textarea> 它位于一个用户将向其中添加项目的页面上,因此它将被频繁地导航到和离开。如果用户在textarea元素中键入内容并导航离开,他们将不得不重新键入所有内容 如何使textarea元素中键入的任何内容都能够存储,即使用户离开了页面?我不希望有一个“保存”按钮,然后将其存储在$\u会话或SQL中,我希望有一种方法可以将文本保存在那里,
<textarea name="comment" id="comment"></textarea>
它位于一个用户将向其中添加项目的页面上,因此它将被频繁地导航到和离开。如果用户在textarea元素中键入内容并导航离开,他们将不得不重新键入所有内容
如何使textarea元素中键入的任何内容都能够存储,即使用户离开了页面?我不希望有一个“保存”按钮,然后将其存储在$\u会话或SQL中,我希望有一种方法可以将文本保存在那里,而不必导航到新页面。为了澄清,会话是可以的,但我不希望用户必须按任何键来存储它,我希望它自动存储。解决方案
使用本地存储
window.onbeforeunload = function () {
localStorage.setItem('comment-save', document.getElementById('commment').value);
}
然后当页面加载时
window.onload = function () {
document.getElementById('comment').value = localStorage.getItem('comment-save');
}
解释
窗口。onbeforeunload
将在关闭页面之前运行代码。例如,您始终可以更改事件
document.getElementById('comment').input
应该在用户每次键入内容时保存该值。下一行将textarea
值存储在名为comment save的localStorage
项中
加载页面时,代码块将运行。它将定位
#注释
文本区域,并将其值设置为保存的注释
最后一个问题
如果用户提交了评论,您可能不想再存储它了。在提交代码中,添加
localStorage.removeItem('comment-save');
为什么?
为什么在PHP上使用这个?PHP在保存客户端数据方面已经过时了。它还浪费服务器端资源。解决方案
使用本地存储
window.onbeforeunload = function () {
localStorage.setItem('comment-save', document.getElementById('commment').value);
}
然后当页面加载时
window.onload = function () {
document.getElementById('comment').value = localStorage.getItem('comment-save');
}
解释
窗口。onbeforeunload
将在关闭页面之前运行代码。例如,您始终可以更改事件
document.getElementById('comment').input
应该在用户每次键入内容时保存该值。下一行将textarea
值存储在名为comment save的localStorage
项中
加载页面时,代码块将运行。它将定位
#注释
文本区域,并将其值设置为保存的注释
最后一个问题
如果用户提交了评论,您可能不想再存储它了。在提交代码中,添加
localStorage.removeItem('comment-save');
为什么?
为什么在PHP上使用这个?PHP在保存客户端数据方面已经过时了。它还浪费服务器端资源。您应该考虑使用或