Hans: Datum per Javascript vorbelegen?

hallo!

ich möchte beim laden des formulars das datumsfeld vorbelegen per javascript. habe leider null ahnung von javascript, ist aber sicher für einen js-profi kein problem ;-)

***

das habe ich im header:

<script>
function TERMIN() {
 document.write(GetDatum(4))
}
function RUECKTERMIN() {
 document.write(GetDatum(18))
}
function GetDatum(offset) {
 var time = new Date()
 time.setTime( time.getTime()+offset*86400000)
 return DatArray[time.getDay()]+' '+time.getDate()+'.'+(1+time.getMonth())+'.'+(2000+(time.getYear()%100))
}
</script>

das sind die beiden formularfelder:

...
<td>Hinreise am<br />
<input type="text" name="tt_termin" id="tt_termin" value="" />
</td>
...

<td>Rückreise am<br />
<input type="text" name="tt_ruecktermin" id="tt_ruecktermin" value="" />
</td>

wie kriege ich die werte aus TERMIN()und RUECKTERMIN() in das jeweilge VALUE rein??

vielen dank für eure hilfe!!

  1. Hi there,

    das sind die beiden formularfelder:

    ...
    <td>Hinreise am<br />
    <input type="text" name="tt_termin" id="tt_termin" value="" />
    </td>
    ...

    Na Du traust Dich was! Da werden hier in diesem Forum wieder ein paar einen Herzanfall bekommen, weil Du ein Inputfeld in eine Tabelle gesetzt hast;)

    Anyway, Dein Datum bekommst Du mit der Javascriptanweisung:

    document.NAME_DES_FORUMULARS.NAME_DES_INPUTFELDES.value=DEIN_DATUM;

    1. Hi there,

      das sind die beiden formularfelder:

      ...
      <td>Hinreise am<br />
      <input type="text" name="tt_termin" id="tt_termin" value="" />
      </td>
      ...

      Na Du traust Dich was! Da werden hier in diesem Forum wieder ein paar einen Herzanfall bekommen, weil Du ein Inputfeld in eine Tabelle gesetzt hast;)

      Anyway, Dein Datum bekommst Du mit der Javascriptanweisung:

      document.NAME_DES_FORUMULARS.NAME_DES_INPUTFELDES.value=DEIN_DATUM;

      ich soll nur das datum eines bestehenden formulars (mit lauter td/tr etc) wenn es leer ist mit dem tagesdatum +x füllen.

      leider habe ich absolut null ahnung von javascript, php etc wäre kein problem - geht aber hier nicht.

      "document.NAME_DES_FORUMULARS.NAME_DES_INPUTFELDES.value=DEIN_DATUM;" wo kommt das rein? beim ersten anzeigen des formulars soll halt das datum gefüllt werden, es sei denn es steht schon was drin (z.b. aus cookie)...

      1. Hi there,

        "document.NAME_DES_FORUMULARS.NAME_DES_INPUTFELDES.value=DEIN_DATUM;" wo kommt das rein? beim ersten anzeigen des formulars soll halt das datum gefüllt werden, es sei denn es steht schon was drin (z.b. aus cookie)...

        Zum Beispiel in eine Funktion, die Du beim Laden der Seite aufrufst (<body onload="funktion()">)

  2. n'abend,

    wie kriege ich die werte aus TERMIN()und RUECKTERMIN() in das jeweilge VALUE rein??

    Wir einigen uns darauf, unser Javascript-Gedöns draußen zu lassen und nur dann einzuklinken, wenn Javascript im Browser aktiviert ist. Dadurch sparen wir uns evtl. einige dumme Sachen. (Stichwort unobtrusive und so)

    Wir können auf so ziemlich jedes Objekt in unserem Dokument zugreifen. Die (manchmal etwas lustigere) Frage ist dabei _wie_. Durch document.write() erreichen wir genau gar nichts. Glücklicherweise hat uns [insertSomeHigherBeingHere] mit der Funktion document.getElementById() ausgestattet.

    function writeTermin()  
    {  
      // holen wir uns erst mal unser Textfeld  
      var inputfeld = document.getElementById( 'tt_termin' );  
      // wenn unser Textfeld wirklich da ist, belegen wir es mit einem Wert  
      if( inputfeld )  
        inputfeld.value = GetDatum(4);  
    }
    

    das gleiche machen wir nun auch noch für den RückTermin.
    (* weitere Abstraktionsmöglichkeiten der Einfachheit halber weggelassen)

    function writeRueckTermin()  
    {  
      // holen wir uns erst mal unser Textfeld  
      var inputfeld = document.getElementById( 'tt_ruecktermin' );  
      // wenn unser Textfeld wirklich da ist, belegen wir es mit einem Wert  
      if( inputfeld )  
        inputfeld.value = GetDatum(18);  
    }
    

    Nun müssen wir noch schauen, dass wir unsere beiden Funktionen aufgerufen werden, sobald die Seite geladen wurde. (genau, wenn die Seite geladen wurde, nicht vorher!)

    document.onload = function()  
    {  
      // führe unsere beiden terminsetzer aus  
      writeTermin();  
      writeRueckTermin();  
    }
    

    der letzte Block bewirkt, dass die beiden vorher definierten Funktionen (writeTermin und writeRueckTermin) ausgeführt werden, sobald die Seite fertig geladen wurde.

    weiterhin schönen abend...

    --
    wer braucht schon großbuchstaben?
    sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|