我有一个静态站点(我们称之为设置页面),我的 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 中读取吗?
请给我一些想法:]
最佳答案
您可以使用sessionStorage
和JSON.parse
。
在您的首页:
var arrayJSON = JSON.stringify(yourArray);
sessionStorage.setItem("tabledata",arrayJSON);
在第二页上:
var tableData = JSON.parse(sessionStorage.getItem("tabledata"));
这会将当前 session 期间的数据以字符串形式保存在浏览器中。如果您希望更永久地存储它,可以使用 localStorage 而不是 sessionStorage (相同语法),即使用户关闭浏览器并稍后返回,它也会被存储。
有关 sessionStorage 和 localStorage 的更多信息,请访问 MDN docs
关于php - 如何从另一个页面将数组发送到 Javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15275116/