繁体   English   中英

Javascript:是否只有一页的 sessionStorage 或 localStorage 之类的东西?

[英]Javascript: Is there something like sessionStorage or localStorage for one page only?

我目前正在使用 ASP.NET MVC 和 HTML/JavaScript 的网站上工作。 在这个网站上,我有一个数据表单页面,其中包含多个文本字段、组合框、日期时间选择器和其他控件(其中一些来自 jQuery UI 扩展),用户可以在其中输入数据。

现在我要求刷新页面时输入的数据不应丢失,因为当前刷新页面时表单中的所有字段都变为空白。

我已经实现了一个解决方案,它将用户输入的所有内容存储在 sessionStorage 中,并在用户刷新页面时恢复它。 但是,sessionStorage 不适合此目的,因为当用户导航到网站上完全不同的页面然后导航回包含数据表单的页面时,数据甚至会被恢复。

有什么方法可以通过 JavaScript 存储数据,其工作方式与 sessionStorage(或 localStorage)类似,但在用户导航到不同页面时会自动清除? 如果没有,是否至少有一种简单的方法可以在用户导航到另一个页面时手动清除 sessionStorage?

此 function 将在 url 更改时调用。

$(window).bind('hashchange', function() {
 // reset the data
});

您可以在布局页面中处理文档就绪事件,然后您可以通过页面 URL 检查。

<script>

    $(document).ready(function () {
        if (window.location.href != 'your url') {
            // reset all data
        }
        else {
            // restore data from local storage
        }
    });
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM