第一页
<button onclick="refereceid_Transfer()">Try it</button>
<script>
function refereceid_Transfer() {
alert('test');
var referenceid = "jggd154278";
referenceid = btoa(referenceid);
//sessionStorage.setItem("sent", referenceid);
window.open("second.jsp", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");
}
</script>
第二页
<p id="s1"></p>
<script>
$(document).ready(function(){
// var a = sessionStorage.getItem("sent",id);
alert(a);
});
</script>
我需要将我的引用ID从一个窗口传递到另一个窗口。我尝试使用会话存储和本地存储来传递变量,我在两种情况下都失败了。是否有新的建议,我可以将我的参考ID传递给新窗口。
谢谢
答案 0 :(得分:4)
您可以尝试localStorage。
添加您要在另一页上传递的项目:
localStorage.setItem("key", "value");
在另一个页面上,您可以通过以下方式访问:
localStorage.getItem("key");
您也可以在 localStorage 中存储对象数据。请注意,如果您要存储一些敏感信息,请清除 localStorage 。
更简单的选择是使用查询参数,但我认为你不能使用它。
或者您可以使用 sessionStorage :
sessionStorage.setItem("key", data);
window.open("page_url","_blank");
在另一页上使用:
$(document).ready(function(){
var data = sessionStorage.getItem("key");
console.dir(data);
});
注意: sessionStorage对象等于localStorage对象,但它只存储一个会话的数据。当用户关闭特定浏览器选项卡时,将删除数据。
答案 1 :(得分:3)
您可以使用本地存储执行此操作,也可以在查询参数中传递它并在第2页读取查询参数。 如果您正在进行服务器端渲染,则还可以使用会话存储。