0

我有一个静态站点(我们称之为设置页面),我的 Javascript 函数从 mysql 表中获取 AJAX 数据并在 HTML 文档上绘制表。它就像一个魅力 - 它获取我需要的所有数据并以适当的方式进行操作。这是我的功能:

function get_people()
{
   $.post("/controller/get_people", function(data,status,xhr)
   {
       if(status=="success")
       {
           people_data = data;
           draw_table();
       }
   }) 
}

问题是,在另一页上,我有一张桌子,旁边有所有人和复选框。我正在选中此复选框,单击一个按钮,然后我想进入设置页面-我的 get_people 函数将仅从 mysql 中选择有关上一页上检查的人员的数据。

从技术上讲,问题是 - 如何将数组从另一个页面传递给 javascript 函数?我可以将它保存在 DOM 或其他东西上并从 JS 中读取吗?

请给我一些想法:]

4

1 回答 1

2

您可以使用sessionStorageJSON.parse

在您的第一页上:

var arrayJSON = JSON.stringify(yourArray);
sessionStorage.setItem("tabledata",arrayJSON);

在您的第二页上:

var tableData = JSON.parse(sessionStorage.getItem("tabledata"));

这将在当前会话期间将数据保存为浏览器中的字符串。如果您希望它更永久地存储,您可以使用 localStorage 而不是 sessionStorage (相同的语法),即使用户关闭浏览器并稍后返回,它也会被存储。

MDN 文档中有关 sessionStorage 和 localStorage 的更多信息

于 2013-03-07T15:35:11.093 回答