2017-05-26 1 views
2

Ich versuche, einige Daten im lokalen Speicher zu speichern, aber es funktioniert nicht. Keine Warnung oder Fehler in der Konsole.Daten nicht im lokalen Speicher gespeichert. Keine Warnung oder Fehler in der Konsole

if(localStorage.setItem("testid", document.getElementById("testid").value)) { 
    alert("done"); 
    } 
+2

das ist zu arbeiten, weil 'localStorage.setItem ("Testid", document.getElementById ("Testid"). Value)' gibt nichts zurück – warl0ck

+0

Wie Sie tun wissen, dass es nicht im lokalen Speicher gespeichert ist? Ob "done" alarmiert ist oder nicht, hat damit nichts zu tun. – Bergi

Antwort

0

Vor lokalen Speicher verwenden, überprüfen Sie die Browserunterstützung für local

if (typeof(Storage) !== "undefined") { 
    // Code for localStorage/sessionStorage. 
    var data = document.getElementById("testid").value; 
    localStorage.setItem("testid", data); 
} else { 
    // Sorry! No Web Storage support.. 
} 
4
`setItem` 

Funktion nichts zurückgibt, die die undefinierte daher bedeutet, wenn die Bedingung wird nie in. Allerdings sollte es noch den Wert der hinzufügen lokaler Speicher, wenn Sie die Konsolentools überprüfen.

Hier ist die fiddle, um es zu überprüfen.

Versuchen Sie einfach

localStorage.setItem("testid", document.getElementById("testid").value); 
alert("Done"); 
1

Das ist, weil localStorage.setItem("testid",document.getElementById("testid").value) nichts zurückgeben daher wird nie Alarm zeigt.

Um sicherzustellen, dass Sie das Element festgelegt haben Sie es durch Abrufen überprüfen und, wenn es nicht null ist, können Sie die Warnung zeigen, dass es

Just do erfolgreich war:

if (typeof(Storage) !== "undefined") { 
 
     localStorage.setItem("testid", document.getElementById("testid").value); 
 
     if(localStorage.getItem("testid") !== null) { alert("OK");} 
 
     else { alert("not saved");} 
 
    } else { 
 
     console.log("No storage support"); 
 
    }
<div id="testid"> "Hello there" </div>

0

Sie haben die Daten bereits im lokalen Speicher abgelegt. Überprüfen Sie das DOM in der Browserkonsole unter localstorage ist es bereits mit Wert zugeordnet.

if(localoStorage.getItem("testid") != null){ 
      alert("done"); 
     } 

-Test wie diese wird es in Ordnung :)

Verwandte Themen