2017-02-16 65 views
4

我正在研究基本的HTML/CSS/JavaScript測驗網站。是否在HTML頁面之間重新加載外部JavaScript文件?

我使用的數據收集外部JavaScript在JavaScript的HTML形式,例如:

var userInfo = []; 
function savePerson(form) 
{ 
    userInfo[0] = form.store.value; 
    userInfo[1] = form.employeeId.value; 
    userInfo[2] = form.fName.value; 
    userInfo[3] = form.lName.value; 
}; 

這一切正常。

現在,我需要去一個不同的HTML頁面,但保持這個值在數組中。 JavaScript是否在HTML文件之間重新加載?如果是的話我如何通過多個頁面保留腳本中的值?

+0

如果您將值保存在Cookie(或「LocalStorage」)中,則只能執行此操作,或者將它們放在表單數據/查詢字符串中。後者是一個非常糟糕的方式來做這個測驗。 – G0dsquad

+0

使用localstorage –

回答

0

您必須將它們存儲在客戶端或服務器端。

對於服務器端存儲,您必須通過ajax將數據發送到服務器,並將其保存在任何類型的數據庫中。

在客戶端,您可以將數據存儲在cookie,localstorage,indexeddb或websql中。

一個簡單的解決辦法是:

localStorage.setItem('myPerson', JSON.stringify(userInfo)); 
+0

我相信這將是最簡單的解決方案,數據不是超級機密,所以服務器端可能有點矯枉過正。 –

0

您可以在陣列保存爲使用文件保存HTML5的設施.js文件。然後在另一個html頁面中,您可以將js文件作爲外部腳本加載。

0

如果使用敏感信息,您可能希望使用後端服務來存儲和檢索此類數據,但在大多數情況下可以使用本地存儲或Cookie。

這裏有一個例子使用本地存儲

設置項:

localStorage.setItem('userInfo', userInfo); 

然後在你的下一個頁面使用該工具來獲取項目:

var userInfo = localStorage.getItem("userInfo"); 
0

使用localStorage的

//save datas: 
localStorage.setItem('data', JSON.stringify(info)); 


//get datas: 
var data=localStorage.getItem('data'); 
相關問題