返回上一页而不丢失数据

Go back to previous page without losing data

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

您必须使用会话。所以你可以在后端使用Nodejs。

Cookie 最适合做这些事情。这就是您实现它的方法。

第一页

  <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 将 return 所有值作为以下格式的单个字符串 "filter=value;key1=value1..."。您现在需要的只是字符串操作并提取所需的值。提取函数执行此特定任务。

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

进一步循环数组中的每个元素。我们使用 = 拆分值,得到 ['filter','value']。只需将它与您想要的键进行比较,如果匹配,将 return 值。

"make sure to use localhost server, as the cookies won't work for regular offline pages."

您应该多了解一下浏览器如何处理 cookie,不要在 cookie 中存储敏感信息,这样做不是一个好习惯。

希望这对您有所帮助....