ABspeichern per localstorage
bearbeitet von
Hallo und guten Morgen,
> Hallo, ich wollte erst, dass meine Nutzer Einstellungen (Medienauswahl) per cookie speichern können, wurde dann aber hier auf localstorage hingewiesen, das ich nicht kannte. Jetzt habe ich mit sehr rudimentären JS-Kenntnissen folgendes versucht.
>
> ~~~
> <!DOCTYPE html>
> <html>
> <head>
>
> <script>
> function speichern() {
> window.localStorage.setItem('medien', 'auswahl');
> }
>
> function lesen() {
> var key = localStorage.getItem('medien');
> alert ("You typed: " + key);
> }
> </script>
>
> </head>
> <body>
>
>
> <form action="JavaScript:speichern();" method="post" >
> <input type="checkbox" name="auswahl[]" value="http://www.tagesschau.de">Tagesschau<br>
> <input type="checkbox" name="auswahl[]" value="http://www.spiegel.de">Spiegel<br>
> <input type="checkbox" name="auswahl[]" value="http://www.heute.de">Heute<br>
> <input type="checkbox" name="auswahl[]" value="http://www.deutschlandfunk.det">Deutschlandfunk<br>
> <input type="checkbox" name="auswahl[]" value="http://www.inforadio.de">Inforadio<br>
[...]
> <input type="checkbox" name="auswahl[]" value="http://www.faz.de">FAZ<br>
> <input type="checkbox" name="auswahl[]" value="http://www.sueddeutsche.de">Süddeutsche<br>
> <input type="checkbox" name="auswahl[]" value="http://www.fr.de">FR<br>
> <input type="submit" value="go!">
> <input type="button" value="read!" onClick="JavaScript:lesen();">
> </form>
>
>
> </body>
> </html>
>
> ~~~
> Ich habe mir zur Kontrolle, das Gespeicherte bzw. Abgerufene per alert ausgeben lassen wollen, klappt aber alles nicht so recht, hat jemand einen Tipp? Danke
WAS klappt denn nicht?
WIE lässt Du die Daten per alert() anzeigen?
Mische nicht das antiquierte Javascript und moderne Methoden. Richte dir einen Eventlistener ein, z.B. für ein Button-Element.
Hier im Wiki ist das scheinbar noch sehr rudimentär, ich kann jedenfalls keine ausführlichen Beschreibungen finden: <http://wiki.selfhtml.org/wiki/JavaScript/API/Web_Storage>
Aber bei der "Konkurrenz" steht schon eine ausführlichere Beschreibung.
<http://www.w3schools.com/html/html5_webstorage.asp>
Daraus geht auch hervor, dass Du tunlichst erst prüfen solltest, ob ein Storage-Type überhaupt zur Verfügung steht. Darin kannst Du dann Skalare und Objekte speichern. Und wenn Du die dann per alert() anzeigen lassen willst, musst Du entwweder direkt auf das betroffene Objekt/den Skalar zugreifen, oder aber über den Storage iterieren. Und Du benötigst eine toString()-Methode für die Objekte.
Grüße
TS