Javascript - Wert einer globalen Variable erhöhen und im anderen HTML-Dokument ausgeben?

...komplette Frage anzeigen

3 Antworten

Du prüfst auf der zweiten Seite immer ob i eine Zahl ist. Wird es aber nie sein, weil i immer undefined sein wird. Du willst ja prüfen, ob key im localStorage eine Zahl ist und wenn nicht auf 1 setzen. Ansonsten hochzählen.

Außerdem musst du i = 0 setzen, weil du in der nächsten Zeile i++ ausführst und es somit niemals 1 gäbe.

if (isNaN(localStorage.getItem("key"))) { i = 0; } 

Hallo und Danke für deine Antwort. Habe das If-Statement nach deiner Methode abgeändert und jetzt bekomme ich immer abwechselnd den Wert "NaN" und "0". Habe immer gedacht, dass im localStorage der Wert dauerhaft gespeichert wird...auch wenn man zwischenzeitlich zwischen den HTML-Seiten wechselt

0
@ombiombi

Habe immer gedacht, dass im localStorage der Wert dauerhaft gespeichert wird

Ist ja auch so.

function Funktion2(){
  var myNumber = parseInt(localStorage.getItem("key"));
  if(isNaN(myNumber)){
    myNumber = 1;
  }else{
    myNumber++;
  }
  localStorage.setItem("key", myNumber);
  alert(localStorage.getItem("key"));
}
1

Am einfachsten per Cookies - das geht aber nur innerhalb einer Domain.

Ansonsten: siehe z. B. https://wiki.selfhtml.org/wiki/JavaScript/Anwendung_und_Praxis/Wert%C3%BCbergabe_zwischen_verschiedenen_HTML-Dokumenten

Er nutzt den localStorage, das ist vollkommen okay. Wird von fast jedem Browser unterstützt und ist leichter auszulesen und zu beschreiben als ein Cookie.

0
@HorstSergio

Das Stimmt. Nur es nützt localStorage nichts, wenn ein Wert im localstorage "verschwindet" wenn man zwischenzeitlich zwischen den HTML-Seiten wechselt. Mit Cookies klappt das alles wunderbar, jedoch arbeite ich mit electron und dort werden keine Cookies unterstütz (Da die Anwendung nicht im Browser läuft).

0

cookies erzeugen overhead. er wird nicht zum spass die localstorage variante verwendet haben

0

ich dachte localstorage ist domainabhängig und nicht dokumentabhängig?

0

Entschuldigung für die schlechte Formatierung! Ich habe es hier nicht viel besser hinbekommen. Bei "Erste HTML-Seite" fehlt noch:

<input type="button" value ="Weiter" onClick="Funktion1()">

Was möchtest Du wissen?