javascript - sessionStorge 上的数据集在同一选项卡的另一页上不可用

标签 javascript html dom session-storage

更新:已解决
大家好,谢谢你们的支持。最后我想通了这个问题。这是同源问题。
================================================ ==================**

我已经在 sessionStorage 上设置了一些数据,并且我有一些按钮可以在同一选项卡上加载另一个页面。

我的问题是我看不到保存在 sessionStorage 上的数据。 在调试控制台上,它显示 sessionStorage 是空的。

此函数在sessionStorage 上设置数据

function requestDriverListings() {

    var drivers = {};

    sendUserData ({}, "request driver.php", function (request) { listDrivers(request,drivers); console.log(drivers); displayDrivers(drivers);});

    sessionStorage.setItem("drivers", JSON.stringify(drivers.a));

}

此函数在页面加载时执行——“其他页面”

function driverProfile () {
    var driverId = sessionStorage.getItem("requestedDriver");
    var driver = sessionStorage.getItem("drivers");
    driver = JSON.parse(driver);
    console.log(driver);
    driver = driver.driverId;
    document.getElementById("driverName").innerHTML = driver.name;
    document.getElementById("driverVehicle").innerHTML = driver.driverVehicle;
    document.getElementById("driverLocation").innerHTML = driver.driverLocation;
    //document.getElementById("driverDetails").innerHTML = driver.driverDetails;


}

请帮我解决这个问题。 谢谢。

最佳答案

session 存储仅限于特定选项卡。 Session Storage 中的数据可在应用程序运行选项卡中访问,因此如果您尝试在另一个选项卡中访问它,那么您将获得未定义或数据不存在的结果。

如果您的数据量很大,您可以使用本地存储;如果数据量较小,您也可以使用 cookie。

关于javascript - sessionStorge 上的数据集在同一选项卡的另一页上不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56528566/

相关文章:

javascript - XMLHttpRequest POST 到 PHP

javascript - 使用 Google Chrome 确定内存泄漏的来源

javascript - 填充输入后自动添加一个div

java - 使用 java DOM 替换/更改 XSD 文件中的元素类型

javascript - IE8 和 IE9 中的文档对象模型原型(prototype)

javascript - 从 dom 到 jquery 的函数

javascript - 尝试将路由器注入(inject) app.component.ts 时出错

javascript - 否定正则表达式模式的问题

javascript - css 两次显示图像反对一次?

jquery - 使用 Angular 形式和 chrome 禁用自动填充/自动完成