我有兩個 html 頁面,每個頁面都有一個 js 檔案。
當我單擊第 1 頁上的按鈕時,它應該將變數引數更改為 true 并將用戶重定向到第 2 頁。
在第 2 頁中,我必須檢查param = true是否然后繼續我的腳本。
- page1.html
<div class="container-fluid" id="about">
<div class="row">
<div id="mainsubtitle">Page 1</div>
<button id="edit" type="button">Go to page 2</button>
</div>
</div>
- script1.js
var param = false;
edit.addEventListener("click", switchToOpenSession);
...
function switchToOpenSession() {
param = true;
...
}
- page2.html
<div class="container-fluid">
<div class="row">
<div>Page 2</div>
<button id="create" type="button">Create account</button>
</div>
</div>
- script2.js
if (param)
/* do this */
我嘗試了匯出/匯入引數,但我得到了Unexpected token 'export' error. 我試過type="module"了,但它不起作用。我發現的樣本是同一個html頁面中的兩個js檔案!
有人可以幫忙嗎?
uj5u.com熱心網友回復:
您可以從第一個檔案中匯出變數
var first;
export { first }
在您的第二個檔案中,您可以匯入該變數
import { first} from './first.js'
或者
<script type="module" src='first.js'></script>
uj5u.com熱心網友回復:
你不能像那樣共享可變狀態。這兩個頁面是完全不同的實體,所以背景關系也不相同。
選項1。當您從一個頁面重定向到另一個頁面時,您可以添加 URL 引數并在第 2 頁決議它。
選項2. 使用localStorage。我假設您在第 1 頁和第 2 頁上交談時具有相同的來源,因此存盤的資料將可見。
uj5u.com熱心網友回復:
您不能從不同的頁面訪問變數,除非您page2.html使用 ajax 加載。使用 cookie 的替代方法或localStorage
script1.js
var param = false;
edit.addEventListener("click", switchToOpenSession);
...
function switchToOpenSession() {
param = true;
localStorage.setItem('param', true)
...
}
然后在script2.js
if (localStorage.getItem('param') == 'true') // note the quotes
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/466840.html
標籤:javascript html jQuery
