javascript - 当我尝试从网站的其他页面访问网页时,如何从缓存中获取网页并恢复表单中的数据?

标签 javascript jquery dom caching breadcrumbs

我的网站上有几个带有表单的页面。我还有面包屑导航和主导航。从某种意义上说,主导航和面包屑导航非常相似。

但我想要的是,当我们单击面包屑链接时,我们会从缓存中转到包含我们之前填写​​表单的数据的页面

F.e.

我有第1页、第2页、第3页。 我转到第 1 页,将一些数据放入表单中。然后转到第 2 页或第 3 页。 我想从面包屑导航返回到 page1,并查看我已放入表单中的所有数据。

history.back();或history.go();在这种情况下不起作用,因为对于这种方法,我们需要丰富层次结构中最后一页的严格逻辑。但就我而言,它不起作用,因为我同时拥有:主导航和重复它的面包屑(请不要问为什么),并且丰富层次结构中最后一页的逻辑可能很困惑。

我尝试使用 windows.location.reload();因为默认情况下,它应该从缓存中重新加载页面。但这不起作用。也许我以错误的方式使用它。或者有另一种方法可以解决这个问题。

html

<nav aria-label="breadcrumb">
            <ol class="breadcrumb">
                <li class="breadcrumb-item"><a href="page1.url">Page One</a></li>
                <li class="breadcrumb-item"><a href="page2.url">Page Two</a></li>
                <li class="breadcrumb-item active" >Page Thre</li>
                
            </ol>
</nav>

js

$(window).load(function(){    
        $('.breadcrumb-item a').each(function(index) {
            var link = $(this).prop('href');
            $(this).on("click", function(){
                link = windows.location.reload();
            })            
        });
    });

最佳答案

我认为你可以同时使用 https://api.jquery.com/serializeArray/https://developer.mozilla.org/fr/docs/Web/API/Window/localStorage将数据以 json 形式保存到本地存储并在任何页面中检索它们。更改页面时必须执行此操作:

jsonData = $("form").serializeArray()
localStorage.setItem('pageOneData', jsonData);

有不懂的可以问我

关于javascript - 当我尝试从网站的其他页面访问网页时,如何从缓存中获取网页并恢复表单中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58216065/

相关文章:

javascript - 在表行上使用可选择的 jQuery,表中的链接不起作用

javascript - 在 JavaScript 中更改宿主对象的原型(prototype)函数?

jquery - Span 中的文本溢出 Div

javascript - 查找在 <select> 中选择了哪个 <Option>(没有 JQuery)

javascript - 为什么我的 JavaScript 提升局部变量返回未定义但提升全局变量返回空白?

javascript - 如果链接和窗口中的 URL 匹配,则添加一个类

javascript - 如何自动选择下拉列表

php - 使用 php 在 xml 中获取标记名

javascript - Bootstrap - 日期时间选择器添加像今天这样的自定义按钮

javascript - 我们可以像 setState 一样给 props 设置值吗?