【发布时间】:2020-07-04 19:17:07
【问题描述】:
我在js中传递变量有问题! 我有两个 html 页面,每个 html 页面都有一个 js 脚本。我希望在单击第一个 html 中的按钮时将变量传递给另一个 js 文件。
我的第一个 html(index.html) 是:
// test.js
var vari;
document.getElementById("btn").addEventListener("click", function() {
vari = 10;
window.location.href = "./index2.html";
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p>test</p>
<button id="btn">click</button>
<script src="./test.js"></script>
</body>
</html>
这个html的脚本是(test.js):
我想在点击 btn 时转到 html2(index2.html) 并且 vari 传递给 js2(test2.js)!
我的 html2(index2.html) 是:
// test.js
var vari;
document.getElementById("btn").addEventListener("click", function() {
vari = 10;
window.location.href = "./index2.html";
});
// test2.js
console.log(vari);
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script src="./test.js"></script>
<script src="./test2.js"></script>
</body>
</html>
但在 test2.js 中,变量是未定义的。 我该如何解决这个问题?
【问题讨论】:
-
如您所见,您收到错误消息。您需要测试元素
btn是否存在 - 因为它不存在且未单击,所以未设置变量 -
@Dexygen 这怎么是骗子? window.globalVar 将在位置更改时消失。OP 未使用节点或反应 btw
标签: javascript html