如何从另一个页面发送数组到Javascript函数?

时间:2013-03-07 15:30:49

标签: php javascript jquery

我有一个静态站点(让我们称之为设置页面),我的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中读取吗?

请给我一些想法:]

1 个答案:

答案 0 :(得分:2)

您可以使用sessionStorageJSON.parse

在您的第一页上:

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

在第二页上:

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

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

MDN docs

上的sessionStorage和localStorage还有更多内容