返回上一页而不会丢失数据

时间:2019-11-24 15:51:49

标签: javascript html history

我有两个网页“ Page_1.html”和“ Page_2.html”。 在第一页中,用户输入一些过滤器(选择,输入等的值)。 我们从第一页访问第二页。 从第二页返回第一页时,我想保存用户最初输入的过滤器。 谢谢

2 个答案:

答案 0 :(得分:0)

饼干最适合做这样的事情。这就是您可以实现的方式。

在第一页

  <a onclick="setCookie()">page 2</a>

Javascript:

function setCookie(){
    document.cookie = "filter=value";
}

要检索第二页上的数据,可以使用

var x = document.cookie; /*  "Key=value;key1=value1..." */

var filter = extract("filter", x);

 function extract(key, cookie){
   var a = cookie.split(";");
   a.forEach((el) => {
       var e = el.split("=");
       if(e[0] == key) {
          return e[1];
       }
   });
 }

document.cookie将以以下格式将所有值作为单个字符串"filter=value;key1=value1..."返回。现在,您只需要字符串操作并提取所需的值即可。提取功能可完成此特定任务。

它使用;分割字符串,将每个cookie分离为数组["filter=value","key1=value1",...]"的元素。

进一步遍历数组中的每个元素。我们使用=分割值,得到['filter','value']。只需将其与所需的键进行比较,如果匹配则将返回值。

  

“请确保使用localhost服务器,因为cookie不适用于常规脱机页面。”

您应该更多地研究浏览器如何处理cookie,并且不要在cookie中存储敏感信息,这不是一个好习惯。

希望这很有帮助。...

答案 1 :(得分:-1)

您必须使用会话。因此,您可以在后端使用Nodejs。