09. april 2019 - 15:56Der er
4 kommentarer og 2 løsninger
variabler på tværs af sider
Hej, håber nogen kan hjælpe. Det er måske min manglende viden der gør at jeg forsøgt at få en variabelværdi hentet på en side hvor variablen ikke er oprettet.
</script> </body> </html> Arrayet bliver forøget , men når jeg loader login1.html er der intet i arrayet.
login1.html
<!DOCTYPE html> <html> <head> <title></title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="js_arrays.js"></script> </head> <body> <p id="demo"></p> <script> document.write("login_array i document.write = " ); document.write(login_array[1]); document.getElementById("demo").innerHTML = login_array; </script> </body> </html> Er der en fejl som jeg ikke kan finde eller er jeg ude i noget der ikke kan lade sig gøre. På forhånd tak
Du er ude i noget der ikke kan lade sig gøre... på den måde.
Når du skifter en side bliver Javascript-motoren stoppet helt og alle variabler forsvinder. Du vil aldrig bare kunne tilgå en variabel der eksisterede tidligere på en anden side uden videre.
For at kunne det, er du nødt til at gemme værdien et mere permanent sted. I gamle dage brugte man enten server-side databaser eller cookies til den slags. Det gør man stadig i dag, men der er kommet en ekstra mulighed, der er lidt lettere at arbejde med: localStorage. Gem noget i localStorage (eller sessionStorage, som er det samme bortset fra at det slettes når browseren lukkes helt), så kan du tilgå det så tosset du vil - så længe dine sider er på samme domæne.
Men husk at de data bliver liggende der for evigt som standard. Brug det sparsomt, eller brug sessionStorage i stedet. Det er præcis det samme, bare "session" i stedet for "local".
Værdien i localStorage bliver altid gemt som en streng, så hvis du vil gemme f.eks. arrays eller objekter, er du nødt til at serialisere dem først, hvilket som regel gøres som JSON. med JSON.stringify() og så JSON.parse() for at få dem tilbage til objekter igen.
Så har jeg noget at lære, så jeg takker for indsatsen.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.