我在js中傳遞變量時遇到問題!我有兩個html頁面,每個html頁面都有一個js腳本。我希望當單擊第一個 html 中的按鈕時,變量傳遞到另一個 js 文件。我的第一個 html(index.html) 是:// test.jsvar vari;document.getElementById("btn").addEventListener("click", function() { vari = 10; window.location.href = "./index2.html";});<!DOCTYPE html><html><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.jsvar vari;document.getElementById("btn").addEventListener("click", function() { vari = 10; window.location.href = "./index2.html";});// test2.jsconsole.log(vari);<!DOCTYPE html><html><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 中 vari 是未定義的。我怎么解決這個問題?
1 回答

素胚勾勒不出你
TA貢獻1827條經驗 獲得超9個贊
將變量保存在 sessionStorage 中。代替
vari = 10;
做
sessionStorage.vari = 10;
然后您可以在以下位置檢索它test2.js
:
console.log(sessionStorage.vari);
請注意,存儲將始終包含一個字符串。如果類型很重要,請確保轉換回數字:
const vari = Number(sessionStorage.vari);
對于更通用的解決方案,要傳輸任何類型的可序列化數據,請JSON.stringify
在保存和JSON.parse
檢索時使用。
- 1 回答
- 0 關注
- 104 瀏覽
添加回答
舉報
0/150
提交
取消