lillcube: variable undefined?

Hi Leute!
Ich habe angefangen Javascript zu lernen und weil ich am liebsten learning-by-doing mache, hab ich mit einem kleinen Projekt angefangen: In ein textfeld kann eine zahl/schriftart/schriftfarbe eingegeben werden und wenn man auf einen button klickt wird auf einer neuen seite ein text ausgegeben, der in der entsprechenden größe/schriftart/farbe ausgeben wird. In diesem fall hab ich mir die schriftfarbe herausgesucht. Mein Quelltext sieht so aus:

  
<html>  
 <head>  
  <title>Schriftfarben-tool</title>  
  
  <link rel"stylesheet" type="text/css" href="test.css">  
  
  <script type="text/javascript">  
  
    var schriftfarbe  = document.eingabe.hexcode.value;  
  
    function AusgabeSchrift()  
     {  
      document.write ( "<font color=#" + schriftfarbe + ">Dies ist ein Text in der von ihnen gewünschten Farbe</font><br><a href=schriftart.html>back</a>" );  
     }  
  
  </script>  
  
 </head>  
  
 <body>  
  
 <form name="Eingabe">  
  
 #<input type="text" name="hexcode">  
  
 <input type="button" onclick="AusgabeSchrift()" value="Farbe testen!">  
  
 </form>  
  
 </body>  
</html>  
  
  

Nur leider bleibt der Beispielstext, wenn man einen hexcode eingibt, immernoch schwarz. ich habe document.write mal mit alert ersetzt, um zu sehen, was genau ausgegebn wird und anstelle von dem variablenwert steht nur "undefined" da.
Bitte schlagt mich nicht, weil die Lösung so simpel ist und ich nicht draufegkommen bin  ;) . Ich vermute nämlich, dass es nur ein syntax-fehler oder eine falsche anordnung ist, irgendein Anfängerfehler eben, aber ich bin nunmal leider Anfänger ^^
Ich suche jetzt schon seit mehr als einer Stunde nach einem Fehler und hab mit einigen Beispielen aus dem SelfHTML-Tutorial für js verglichen, hin und her probiert und bis jetzt noch nicht das richtige gefunden.
Wäre super, wenn mir jemand helfen könnte und mir sagen, was ich falsch gemacht habe.
Grüße und Danke im Vorraus lillcube

  1. Hi,

    var schriftfarbe  = document.eingabe.hexcode.value;
    <form name="Eingabe">
    #<input type="text" name="hexcode">

    ich hab jetzt nicht weiter reingeguckt ob noch was nicht in Ordnung ist, aber JS ist case-sensitive, d.h. document.Eingabe... wäre die richtige Angabe. Wenn du z.B. Firefox zum debuggen benutzt kann dir die Javascript-Konsole bei solchen Fehlern weiterhelfen.

    MfG
    Rouven

    --
    -------------------
    ie:| fl:| br:> va:| ls:& fo:) rl:( n4:{ ss:) de:] js:| ch:? mo:} zu:|
    1. Hi Rouven,

      JS ist case-sensitive, d.h. document.Eingabe... wäre die richtige Angabe.

      Also mal danke für die Antwort, habs abgeändert, aber leider zeigt es immernoch keine Wirkung, d.h. die Variable ist immernoch "undefined".

      Ich bin relativ ratlos ^^

      Grüße cube

      1. Hi,

        ->derletztekick hat Recht, die Variable ist noch nicht da, zieh sie in die Funktion.

        MfG
        Rouven

        --
        -------------------
        ie:| fl:| br:> va:| ls:& fo:) rl:( n4:{ ss:) de:] js:| ch:? mo:} zu:|
  2. Hallo lillcube,

    Du versuchst auf das Formular zu zugreifen noch bevor es existiert:

      
        function AusgabeSchrift()  
         {  
       var schriftfarbe  = document.Eingabe.hexcode.value;  
          document.write ( "<font color=#" + schriftfarbe + ">Dies ist ein Text in der von ihnen gewünschten Farbe</font><br><a href=schriftart.html>back</a>" );  
         }
    

    Mit freundlichem Gruß
    Micha

    --
    LeagueEditor JavaScript :: simple Ligaverwaltung auf der Basis von JavaScript || JS Tetris :: für zwischendurch
    1. Hi Micha und Rouven!

      Tatsache, jetzt funtioniert es. Aus irgendeinem unerfindlichem Grund hat es, als ich es schonmal versucht habe nicht geklappt, aber ich glaube, da hatte ich das ; vergessen. Naja, also vielen Dank, ich werde es mir merken ^^

      Auf wiederlesen, cube

      1. Hallo lillcube,

        aber ich glaube, da hatte ich das ; vergessen.

        Das ist in JavaScript nicht pflicht, sofern nur eine Anweisung pro Zeile steht. Wenn Du den Namen des Forumlars klein geschrieben hattest, was ich vermute, wird das Dein Fehler gewesen sein. Rouven hatte Dich ja bereits auf diesen Fehler hingewiesen...

        Mit freundlichem Gruß
        Micha

        --
        LeagueEditor JavaScript :: simple Ligaverwaltung auf der Basis von JavaScript || JS Tetris :: für zwischendurch