浏览器后退按钮和动态元素

我有一个页面,它使用jQuery根据用户从框中内容动态创建多个 DOM元素。

假设用户从选择框中选择4,我的脚本动态显示4个输入框。

问题是当用户刷新或返回此页面时(使用浏览器后退按钮)。 动态创建的元素不会重新填充到它们的最后值,而所有其他“静态”元素都是。

我想我可以创建一个隐藏的输入 ,通过javascript与动态框的内容序列化,然后在$ document.ready上读取它,然后重新填充我的框。

有没有更好的办法?

legenden – 有很多可能的解决方案,我会查看这些历史插件:

  • 历史遥远
  • jQuery历史插件
  • 深层链接插件

他们有点烦躁,但你应该能够抨击一些积极的东西。 我还要补充一点,这可以通过将动态元素存储在cookie中并以某种方式重新填充来完成。 查看jQuery Cookie插件 。 希望能帮助您入门。

如果您希望以这种方式工作,您需要自己管理历史记录。 你需要真正简单的历史 。