在所有选项卡的选项卡关闭时删除 sessionStorage 属性

Remove sessionStorage property on tab close for all tabs

我是 .NET 开发的新手,正在开发使用 ASP 编写的带有 Web 表单的应用程序。该应用程序有一个带有 table 的页面,当单击 table 行时,它会打开一个新选项卡。新选项卡有一个表单,其中包含来自被单击行的预填充数据。我使用 sessionStorage 完成了此操作。

现在我想编写一些 JS,在仅关闭表单选项卡时从两个选项卡的 sessionStorage 中删除该项目。我尝试了以下操作,但是当我关闭表单选项卡并检查 table 选项卡中的 sessionStorage 时,属性 仍然存在。有什么想法吗?谢谢,任何帮助!

下面的代码 运行 在 .aspx 文件的内容页脚中,我所有其他的工作 JS:

<asp:Content ID="Content3" ContentPlaceHolderID="contentfooter" runat="server">
    <script>
        window.addEventListener('unload', (e) => {
          sessionStorage.removeItem('rowDataJSON');
        });
    </script>
</asp:Content>

您不能为此使用 sessionStorage。因为来自 MDN

Opening a page in a new tab or window creates a new session with the value of the top-level browsing context, which differs from how session cookies work.

你可以使用的是localStorage