繁体   English   中英

Javascript全局变量值未更新

[英]Javascript global variable value not updated

我有两个具有两个javascript函数的html页面。

page1.html

<a href="page2.html" onclick="ex1()">link1</a>

page2.html

<a href="#" onclick="ex2()">link2</a>

jscript1.js

var abc;
function ex1() {
    abc='some text';
    console.log(abc);

}
function ex2() {
    console.log(abc);
}

在控制台中,当进入ex2()函数时,我变得undefined 我在这里做错了什么?

您将转到另一个未定义abc变量的页面。

您需要将变量从一个页面呈现到另一页面。

一种解决方案是使用localStorage:

function ex1() {
    localStorage['abc']='some text';
    console.log(localStorage['abc']);

}
function ex2() {
    console.log(localStorage['abc']);
}

您是否要在页面之间传递值(page1.html-> page2.html)? 如果是这样,它将无法正常工作,因为每次加载页面时都会“重置”脚本...

您可能使用cookie或localStorage来传递变量-cookie对跨浏览器更友好(本地存储在较旧的浏览器中将不起作用,Firefox会询问用户权限)。

您正在更改页面,这意味着您正在加载新的执行环境。

旧的变量丢失了。 您需要将它们通过URL或通过cookie或存储转移到新页面。

如果它们不包含在常见的html或jsp或php中,请稍后。 然后再次启动变量abc 变量的范围限制在页面内,并且不能重定向到其他页面。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM