Wieso funktioniert mein localStorage nicht?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet
  1. Dein Skript überschreibt den Eintrag immer wieder. Das heißt, du speicherst maximal einen Wert.
  2. Da du nichts Weiteres geteilt hast, würde ich einmal hinterfragen, ob du überhaupt eine Logik implementiert hast, die beim Laden der Seite gespeicherte Einträge aus dem Storage laden und in die Liste einfügen würde.
  3. Deine Seite solltest du über eine Domain aufrufen (falls du das nicht bereits tust). Das heißt, du benötigst auch einen Webserver, der die Seite für dich ausspielt.
  4. Diese Zeile ist redundant und generell wohl nicht sonderlich sinnvoll:
localStorage.getItem(localStorage.key(txt));

Den Rückgabewert verwertest du doch nirgendwo. Außerdem setzt der Aufruf voraus, dass txt in jedem Fall einem gültigen Index entspricht. Wenn du also immer nur einen Schlüssel speicherst (listenelement), gibt es immer nur einen Eintrag im Storage und auch nur einen gültigen Index: 0.

dahjonny 
Fragesteller
 05.01.2022, 20:27

Ah okay Danke für die Hilfe!
Habe ein wenig weiterrecherchiert. Abspeichern kann ich es jetzt...nur sieht es noch nicht so schön aus.
Bei der 2. von dir:
Das hat mir geholfen! Also implementiere ich noch eine UpdateList()-Funktion um die gespeicherten Einträge zu laden.


0
MagisterSamael  05.01.2022, 20:29

Zu 4.:

Nicht unbedingt.

Es gab und gibt Bugs in Browsern, die die Daten nur abspeicherten, wenn sie einmalig geladen wurden.

Frag mich nicht wieso, hat mich bei einem Projekt Tage gekostet herauszufinden.

0
MagisterSamael  05.01.2022, 20:46
@regex9

Habe nie etwas offizielles gefunden (oder gar gesucht, wenn ich ehrlich bin), nur Nutzer mit Ähnlichen Problemen und Lösungen auf Stackoverflow.

0

Ave!

Abgespeichert werden diese nur aber wenn ich die Seite neu Lade verschwinden diese gleich wieder.

Startest du die Seite Lokal oder über eine Domain?

LocalStorage ist Domaingebunden.

In manchen Fällen kann das zu Problemen führen, wenn man die Seite Testweise lokal öffnet.

dahjonny 
Fragesteller
 05.01.2022, 20:28

Danke für den Tipp!

0

JavaScript kann ja auch nicht so einfach Daten auf der Festplatte speichern. Das muss man auf dem Server speichern (PHP) oder vielleicht als Cookie und dann laden, wenn die Seite geöffnet wird.

MagisterSamael  05.01.2022, 18:37

Wenn man keine Ahnung hat, sollte man lieber gar nichts schreiben...

0