maxgarine: Textarea:Text bei Klick verschwinden

Also, wie der Titel sagt soll beim Klick auf eine Textarea der vorgegebene Text verschwinden.
Mein bisheriger Javascript-Code

function clean_up()  
  {  
   if(document.form.Textbox.value == 'Hier Text eingeben')  
   {  
    document.form.Textbox.value= '';  
    document.form.Textbox.focus();  
   }  
  }

Mein HTML-Code:

<textarea id="Textbox" name="Textbox" rows="10" cols="50" onfocus="clean_up()" >Hier Text eingeben</textarea>

  1. hi,

    ahem... und Deine Problembeschreibung? Fehlermeldung aus der Javascript Konsole?

    if(document.form.Textbox.value == 'Hier Text eingeben')

    ^^^^^^
    form ist in js eine reservierter Begriff. Verwende einen anderen Namen für Deine Form

    Gruesse, Joachim

    --
    Am Ende wird alles gut.
    1. document.form
      form ist in js eine reservierter Begriff.

      Für was ist denn reserviert?

      Mathias

      1. document.form
        form ist in js eine reservierter Begriff.

        Für was ist denn reserviert?

        In vielen Browsern für das form-Tag im allgemeinen (nicht mit document.forms verwechseln).

        Gruß, LX

        --
        X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: Unusual
        X-Please-Search-Archive-First: Absolutely Yes
        1. document.form
          In vielen Browsern für das form-Tag im allgemeinen (nicht mit document.forms verwechseln).

          Was ist denn "das form-Tag im allgemeinen"?
          Seit wann hat ein HTML-Element ein zugehöriges globales Objekt "im Allgemeinen"?
          Meinst du vielleicht das DOM-Interface, dessen prototype-Eigenschaft sich erweitern lässt? Das steht üblicherweise unter dem Element HTMLFormElement zur Verfügung.
          Also ich kenne keinen Browser, in dem document.form von Haus aus gesetzt ist.

          Mathias

          1. Hi,

            Also ich kenne keinen Browser, in dem document.form von Haus aus gesetzt

            in der Tat ist form als referenz auf die form nur im formelement gesetzt. Hat der Mattes mich wieder ertappt...

            Gruesse, Joachim

            --
            Am Ende wird alles gut.
  2. Hallo,

    Also, wie der Titel sagt soll beim Klick auf eine Textarea der vorgegebene Text verschwinden.

    und was für ein Problem hast du dabei?

    function clean_up()

    {
       if(document.form.Textbox.value == 'Hier Text eingeben')

      
    Vergleiche hier besser nicht mit einem konstanten String, sondern mit der Eigenschaft defaultValue. Dann brauchst du den Text nur einmal -nämlich im HTML- anzugeben.  
      
    
    > ~~~javascript
    
       {  
    
    >     document.form.Textbox.value= '';  
    >     document.form.Textbox.focus();
    
    

    Der Aufruf von focus() ist eigentlich überflüssig, wenn du die Funktion ohnehin onfocus aufrufst.

    <textarea id="Textbox" name="Textbox" rows="10" cols="50" onfocus="clean_up()" >Hier Text eingeben</textarea>

    Das Ganze kann man noch etwas eleganter machen, indem man im Eventhandler onfocus="cleanup(this)" notiert und dann innerhalb der Funktion direkt auf das übergebene Element zugreift. Dann kann man nämlich dieselbe Funktion für beliebig viele ein- oder mehrzeilige Eingabefelder verwenden.

    Ich bin aber persönlich der Ansicht, dass das Vorhaben insgesamt unvorteilhaft ist. Der Sinn eines Eingabefeldes sollte sich durch den Kontext oder durch sein Label erschließen, ein zusätzlicher Hinweis durch die Feld-Vorbelegung ist daher IMHO überflüssig.

    So long,
     Martin

    --
    Wer im Steinhaus sitzt, soll nicht mit Gläsern werfen.
  3. Folgender Gedanke:

    Das HTML sollte semantisch bleiben, d.h. der Text, der im Form steht, ist eigentlich ein label und gehört auch in ein derartiges Tag. Der Trick besteht darin, dieses 1. per JS-angesteuertem CSS über der Textarea anzuzeigen und 2. bei Bedarf verschwinden zu lassen.

    Gruß, LX

    --
    X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: Unusual
    X-Please-Search-Archive-First: Absolutely Yes