2017-02-16 2 views
4

Ich arbeite an einer einfachen HTML/CSS/JavaScript-Quiz-Website.Wird eine externe JavaScript-Datei zwischen HTML-Seiten neu geladen?

Ich verwende eine externe JavaScript für die Datensammlung von einem HTML-Formular in JavaScript als solche:

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; 
}; 

Dies funktioniert gut.

Nun muss ich auf eine andere HTML-Seite gehen, aber behalten Sie die Werte in Array. Lädt JavaScript zwischen HTML-Dateien neu? Wenn ja Wie kann ich die Werte eines Skripts über mehrere Seiten hinweg beibehalten?

+0

Sie können dies nur tun, wenn Sie die Werte in einem Cookie (oder 'LocalStorage') behalten oder sie in Form data/querystring posten. Letzteres ist eine sehr schlechte Art, dies für ein Quiz zu tun. – G0dsquad

+0

Verwenden Sie localstorage –

Antwort

0

Sie müssen sie entweder auf der Clientseite oder auf der Serverseite speichern.

Für Server-Side-Storage müssen Sie die Daten über Ajax an den Server senden und dort in jeder Art von Datenbank speichern.

Auf der Clientseite können Sie die Daten entweder in Cookies, localstorage, indexeddb oder websql speichern.

wäre eine einfache Lösung:

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

Ich glaube, das wird die einfachste Lösung sein, die Daten sind nicht super vertraulich, so Server-Seite könnte ein bisschen übertrieben sein. –

0

Sie das Array als JS-Datei speichern Einrichtungen von html5 mit der Datei speichern könnte. Und dann in der anderen HTML-Seite würden Sie die js-Datei als ein externes Skript laden.

0

Wenn Sie vertrauliche Informationen verwenden, möchten Sie wahrscheinlich einen Back-End-Dienst verwenden, um solche Daten zu speichern und abzurufen. In den meisten Fällen können jedoch lokaler Speicher oder Cookies verwendet werden.

Heres ein Beispiel unter Verwendung von Local Storage

das Element Set:

localStorage.setItem('userInfo', userInfo); 

dann auf der nächsten Seite verwenden diese das Produkt zu erhalten:

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

Verwendung local

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


//get datas: 
var data=localStorage.getItem('data'); 
Verwandte Themen