注销时保留动态添加的DOM元素

时间:2018-08-19 16:11:53

标签: javascript html node.js

我最近遇到了Salesforce应用程序具有的功能,即,当我们注销时,将保留在会话期间打开的选项卡,并在以后再次登录时再次显示。 我想在我的Web应用程序中实现类似的功能,在该应用程序中我想保留动态创建的DOM元素,以便在刷新页面或注销时仍显示这些元素,除非最终用户决定删除/关闭/销毁这些元素。

有人实施过听起来很熟悉的事情吗?如果可以,那么理想的解决方法是什么?

感谢帮助!

2 个答案:

答案 0 :(得分:0)

我有一个Web应用程序,可以容纳用户和地址以及各种不同的值。如果您不经常查看数据,那么我已经实现了帮助的审核功能。它将每个值标记为已审核或未审核。由于此功能仅是一个助手,并且不需要审阅标志或时间戳,因此无需在数据库中实现,因此我使用localstorage在本地将数据数组存储为JSON字符串。 这对于我的情况就足够了。您可以对数据模型执行相同的操作。当然,您也可以将每个用户的数据保存在数据库中的单独表上。考虑类似id,userid,featurename之类的内容。使用这种通用布局,您可以保存应用程序每个功能的状态,无论是选项卡,模式,设置还是其他内容。

当然,您需要一个(最好是JS)函数来获取这些设置,然后可以重新创建DOM元素或通过AJAX提取它们。您还需要一个发送AJAX请求的功能,以保存有关功能/窗口/选项卡已打开/关闭/等的信息。

“漂亮功能”的大量工作。可能并不是您的存储桶列表中的头等大事,但是绝对可以改善您的用户体验。

答案 1 :(得分:0)

  

我刷新页面或注销,仍然显示那些元素   除非最终用户决定删除/关闭/销毁这些元素。

只有在refresh/logout之前存储了那些动态创建的元素,这才有可能。

可以通过将值存储在数据库中或使用local/session存储空间来实现。

动态生成的元素的值可以像

一样存储在localStorage中
localStorage.set('someKeyName' ,'value of dynamically generated Elements in string format')

然后刷新后检索值并创建这些元素并将其附加到dom