Avatar billede justask Nybegynder
18. juli 2006 - 13:31 Der er 3 kommentarer og
1 løsning

IE gemmer ikke cookie sat med JS!?

Hej

Håber I kan hjælpe mig. Jeg har et textarea hvor jeg "onkeyup()" gemmer hvad brugeren skriver. Når åbner en ny IE med samme url er cookien korrekt gemt - men hvis jeg lukker alle åbnede IE'er og derefter går ind på url'en igen findes cookien ikke!!

Det ser altså ud til at min js-kode kun gemmer cookies for den gældende session eller noget i den retning. I firefox virker det fint, cookien gemmes og jeg kan lukke alle firefox'er og stadig finde cookien næste gang jeg åbner siden.

Her er min kode:

<html>
<head>
    <script language="javascript" type="text/javascript">
    function SetCookie ( name, value, expiredays )
    {
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        var res = document.cookie=name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate);
        return res;
    }
    function GetCookie(c_name)
    {
        if (document.cookie.length>0)
        {
            c_start = document.cookie.indexOf(c_name + "=");
            if (c_start!=-1)
            {
                c_start=c_start + c_name.length+1;
                c_end=document.cookie.indexOf(";",c_start);
                if (c_end==-1)
                    c_end=document.cookie.length;
               
                return unescape(document.cookie.substring(c_start,c_end));
            }
        }
        return false;
    }   
    </script>

</head>
<body onload="alert ( 'cookie: ' + GetCookie('notes') );" >
    <textarea onkeyup="SetCookie('notes',this.value,30);" style="width: 200px; height: 130px;"></textarea>
</body>
</html>

Måske er det en sikkerhedsindstilling i IE? Håber i alle fald I kan hjælpe...


Takker
Avatar billede roenving Novice
27. juli 2006 - 11:47 #1
Du skal bruge den rigtige værdi, som er GMTString:

        var res = document.cookie=name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString);
Avatar billede justask Nybegynder
27. juli 2006 - 12:34 #2
Hej Roenving

Efter megen blod, sved og tårer kan jeg kun være dig yderst taknemmelig  :)

( det skal dog være med parenteser "exdate.toGMTString()" for at virke )

Smid et svar  :)
Avatar billede roenving Novice
27. juli 2006 - 12:37 #3
Sæføli ...

Velbekomme '-)
Avatar billede roenving Novice
28. juli 2006 - 15:45 #4
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Politiets Efterretningstjeneste

Bliv IT-supporter i PET's IT Servicedesk

Politiets Efterretningstjeneste

IT Sikkerhedsarkitekt i PET

Capgemini Danmark A/S

IGNITE Graduate Program 2026

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Ingeniør til Satellitkommunikation