Announcement

Collapse
No announcement yet.

Javascript - Cookies?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Javascript - Cookies?

    Hallo Leute!
    Habe hier ein kleines (besser gesagt für mich ein grosses) Problem. Habe 3 Tabellen mit jeweils 3 Spalten und zwei Zeilen. Möchte nun das in der 2 Zeile und 3 Spalte jeder Tabelle das aktuelle Datum erscheint wenn ich auf einen Link in der ersten Spalte, erste Zeile klicke. Das hab ich auch hinbekommen - schaut so aus:

    Zweite Zeile, Dritte Spalte:
    <td width="41%">
    <div id="datum"></div>
    <td>
    Und der Link in der ersten Zeile, erste Spalte: <td width="43%"><a href="http://www.link.de" target="_blank" onclick="insert_date('datum')">Link<a>&lt ;/td>

    weiters eine funktion im head - schaut so aus:
    function insert_date(where) {
    var Jetzt = new Date();
    var Tag = Jetzt.getDate();
    var Monat = Jetzt.getMonth() + 1;
    var Jahr = Jetzt.getYear();
    document.getElementById(where).innerText = Tag + "." + Monat + "." + Jahr;
    }

    Tja - jetzt möchte ich aber das in der jeweiligen Spaltenzeile das Datum stehenbleibt - sprich das es gespeichert wird. Das funktioniert wohl nur mit cookies - und das geht über meine Kenntnisse hinaus.
    Ich wäre für jede Art von Hilfe dankbar!
    LG - Hari

  • #2
    <pre>
    function GetCookie(name)
    {
    if(document.cookie == '')
    return null;
    else
    {
    var cookieStart, cookieEnd;
    var cookieString = document.cookie;
    cookieStart = cookieString.indexOf(name);
    if(cookieStart != -1)
    {
    cookieStart += name.length + 1;
    cookieEnd = cookieString.indexOf(';', cookieStart);
    if(cookieEnd == -1) cookieEnd = cookieString.length;
    return unescape(cookieString.substring(cookieStart, cookieEnd));
    }
    else
    {
    return null;
    }
    }
    }

    function SetCookie (name,value)
    {
    var argv=SetCookie.arguments;
    var argc=SetCookie.arguments.length;
    var expires=(argc>2)?argv[2]:null;
    var path=(argc>3)?argv[3]:null;
    var domain=(argc>4)?argv[4]:null;
    var secure=(argc>5)?argv[5]:false;
    document.cookie=name+"="+escape(value)+
    ((expires==null)?""";expires="+expires))+
    ((path==null)?""";path="+path))+
    ((domain==null)?""";domain="+domain))+
    ((secure==true)?";secure":"");
    }

    </pre&gt
    Christian

    Comment


    • #3
      Vielen Dank für deine Bemühungen. Sieht auch sehr eindrucksvoll aus - funktioniert aber trotzdem nicht wenn ich es einfüge..

      Comment


      • #4
        Das muss dann irgendwie bei liegen. Der Code läuft seit Jahren einwandfrei.

        Das sind 2 Routinen um Cookies zu setzen und zu lesen.

        Das setzen und lesen musst du noch machen.

        Hast du das getan?
        Christian

        Comment


        • #5
          Naja - ich habe im body-tag jeweils geschrieben: onLoad="GetCookie('datum');GetCookie('datum1');Get Cookie('datum2');.... usw....

          datum, datum1... deswegen weil dies die jeweilige div-id ist.

          Ansonsten hab ich - abgesehen von dem oben geschriebenen - nix gemacht. Fehlt noch was? Oder hab ich was falsch gemacht

          Comment


          • #6
            Naja, irgendwann solltest du mal einen setzen. Wenn keiner da ist - und hinzaubern kann ihn keiner - wird auch nichts gelesen.

            Also mit

            SetCookie (name,value)

            einen Cookie setzen. Dazu bekommt er einen Namen und einen Wert.

            Beispiel

            SetCookie ("Datum1","31.12.2005");

            Dann kann er mit

            GetCookie("Datum1")

            gelesen werden
            Christian

            Comment

            Working...
            X