在两个浏览器选项卡之间共享变量范围
Shared variable scope between two browser tabs?
我有一个带有HTML表单的web应用程序,其中包含一个选择/选项条目。它在一个有200件商品的演示中运行良好,即使很难找到你想要的,但实际上有超过30000件商品。(这是一份零件清单。)
我的第一个想法是,不要使用下拉框,而是使用"选择零件"按钮,这样会打开第二个浏览器选项卡("搜索零件"),然后显示完整列表、搜索功能等,每个选项卡都有一个"复制到剪贴板"按钮。然后,用户可以按下一个,返回到原始表单,然后按下"粘贴"按钮,零件的名称将输入到表单中。
我想问的是,是否有一个javascript范围,我可以在"搜索部件"选项卡中存储一个小的文本字段和id号,以便在用户按下主表单页面上的"粘贴"按钮时检索它?我不想将消息发送回服务器。
(顺便说一句,我不一定对实现Ctrl+C/V或使用系统剪贴板感兴趣,除非这是简单解决方案的一部分。)
谢谢!
您可以使用HTML5存储API-window.localStorage
var val = localStorage.getItem("key"); //get
localStorage.setItem("key", val); //set
比饼干干净多了。点击此处了解更多信息。
只要第一个页面打开"搜索部件"选项卡,您就应该有权(从"搜索零件"页面内部)访问window.opener
对象。如果您在父页面中设置了一个全局对象,该对象包含所需的属性/变量,则您应该可以从子页面中进行完全访问。因为第一个页面是打开的,所以您仍然可以访问子页面中的调用方法,但我个人坚持让其中一个执行更新。
相关文章:
- 在两个多选字段之间移动选项
- 在两个浏览器选项卡之间共享变量范围
- 仅在使用javascript和html的浏览器中在相同的两个选项卡之间切换
- 如何在同源选项卡之间建立通信
- 如何在Ionic Framework中实现选项卡页面之间的转换
- 在不同数据选项之间循环迭代对象
- 在<选项>标签之间切换时保存输入文本
- 在选择Harvest Chosen选择框之间交换选项
- 使用AngularJS在Bootstrap选项卡之间移动DOM元素
- HTML网站无法在选项卡之间切换
- 浏览器会话存储.在选项卡之间共享
- 在选项卡之间切换而不重新加载图像
- 浏览器是否在选项卡之间传播javascript变量
- 我在angular JS中选择了一个默认选项,并删除了两个单词之间的下划线
- AngularJS Bootstrap Tabset 选项卡在 IE8 中不起作用的选项卡之间的选项卡导航
- 引导选项卡和弹出框之间的冲突
- 选项卡或窗口之间的通信
- Javascript 或 angularjs 在刷新之间延迟浏览器关闭或选项卡关闭
- Js在两个选项之间切换;如果“;
- 如何在具有相同值的两个选项之间更改时检测 Select 更改事件