浏览器窗口关闭时,表单/ JavaScript数据会发生什么变化?

时间:2015-01-09 15:47:44

标签: javascript security memory browser

我有一个html表单,它收集输入元素中的数据,然后生成PDF(使用jsPDF)供用户下载(使用Downloadify js)。收集的数据包含个人信息。

我需要知道的是,输入到输入元素的数据会在用户导航到其他地方或关闭浏览器窗口时保留在浏览器内存中吗?然后由JavaScript处理这些数据?

3 个答案:

答案 0 :(得分:0)

是。即使用户导航到其他页面或关闭选项卡,表单数据也会保存在浏览器内存中。它将保存在临时浏览器自动填充缓存中。您可以使用表单元素的autocomplete="off"属性来禁用此功能。

您可以在此处找到有关自动填充属性的更多信息: http://www.w3schools.com/tags/att_input_autocomplete.asp

答案 1 :(得分:0)

  1. 关闭自动完成功能。如果已设置,则自动填充不会保存。
  2. 将响应中的缓存标头设置为不缓存。浏览器不会缓存页面并在关闭时丢弃。

答案 2 :(得分:0)

是的,它可能会留在记忆中一段时间​​。这超出了您的控制范围,并且在浏览器和操作系统之间会有所不同。

如果您的表单实际上未提交给服务器,则自动填充功能不应存储,但您可能需要添加autocomplete="off"以确保此功能。

完成处理后,您还可以使用JavaScript将表单值设置为空白。

document.getElementById('name').value = '';

您还可以在使用后将任何JavaScript对象设置为null。这并不能保证数据不会保存在某处的内存中。如果需要考虑,您可以鼓励用户在使用和注销操作系统后关闭所有浏览器窗口。 Chrome等浏览器可以保留在内存中,即使所有窗口都关闭,因为如果设置了该选项,它可以存在于系统托盘中,因此注销会强制关闭,同时用户也可以轻松关闭。