ichitaka: alert nicht ausgeführt

lerne gerade javascript in der schule, und hab leider ein problem. das alert wird nicht ausgeführt. weder ich noch mein lehrer haben das problem entdeckt. sehr ihr den fehler? er müsste ja ziehlich am anfang sein.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
<html>  
<head>  
<title>HTML - Schrifthilfe</title>  
<meta name="keywords" content="HTML, schrift, font, tags, help, hilfe">  
<meta name="author" content="Administrator">  
<meta name="editor" content="html-editor phase 5">  
<script language="JavaScript">  
<!--  
function Experte()  
{  
var kategorie = document.formular1.feld1.value;  
  
switch (kategorie) {  
case"":  
alert("Tut mir leid, Sie müssen mir eine Kategorie nennen.");  
alert("Also, wie kann ich Ihnen nun helfen?","");  
break;  
  
case"Schriftgröße":  
case"Größe":  
case"size":  
alert("TExt");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"Schriftart":  
case"schriftart":  
case"Art":  
case"Aussehen":  
case"face":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"Absätze":  
case"p":  
case"Text-Absätze":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"Schriftfarbe":  
case"Farbe":  
case"color":  
case"Textfarbe":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"überschrift":  
case"große schrift":  
case"Titel":  
case"h1":  
case"h2":  
case"h3":  
case"h4":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"Fett":  
case"b":  
case"breit":  
case"dick":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"kursiv":  
case"schräg":  
case"italic":  
case"krumm":  
case"krum":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"zeilenumbruch":  
case"bruch":  
case"umbruch":  
case"zeilenende":  
case"neue zeile":  
case"break":  
case"br":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
case"link":  
case"weiterleitung":  
case"a":  
case"hyperlink":  
case"Verweise":  
alert("Text");  
alert("Wie kann ich dir sonst helfen?");  
break;  
  
default:  
alert("Leider kenne ich diese Kategorie nicht. Bitte nennen sie die Kategorien in nur einem Wort")  
}  
  
if (kategorie=="")  
{  
alert("Nagut, ich leite Sie zu einer Kategorienübersicht weiter.")  
window.location.href = "kategorien.html"  
}  
//-->  
</script>  
<noscript>Ihr Browser unterstützt kein Javascript.</noscript>  
</head>  
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">  
<FORM name="formular1">  
<p>Hallo ich bin ihr HTML Hilfs-Bot. Wie kann ich Ihnen helfen? Ich kann ihnen bei allen HTML Fragen bezüglich der Textgestaltung helfen. Welche Kategorie interresiert Sie?<br>  
<INPUT type="Frage" name="feld1" Size=10></p>  
<INPUT type="button" value="Frag mich" onClick="Experte()">&nbsp;&nbsp;  
</body>  
</html>
  1. lerne gerade javascript in der schule, und hab leider ein problem. das alert wird nicht ausgeführt. weder ich noch mein lehrer haben das problem entdeckt. sehr ihr den fehler? er müsste ja ziehlich am anfang sein.

    Was sagt denn die Fehlerkonsole des Browsers?

    Folgendes bezieht sich nicth auf das JavaScript-Problem, sind aber Hinweise allgemeiner Natur:

    <script language="JavaScript">

    Das language-Attribut ist überlüssig, das type-Attribut fehlt.

    <!--

    JavaScript auskommentieren ...

    //-->

    ... ist nicht notwendig.

    </script>
    <noscript>Ihr Browser unterstützt kein Javascript.</noscript>

    noscript-Elemente sind im head nicht erlaubt.

    </head>
    <body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

    Zum formatieren wäre CSS ggf. interessant.

    <FORM name="formular1">
    <p>Hallo ich bin ihr HTML Hilfs-Bot. Wie kann ich Ihnen helfen? Ich kann ihnen bei allen HTML Fragen bezüglich der Textgestaltung helfen. Welche Kategorie interresiert Sie?<br>
    <INPUT type="Frage" name="feld1" Size=10></p>
    <INPUT type="button" value="Frag mich" onClick="Experte()">&nbsp;&nbsp;

    &nbsp; ist nicht zur Formatierung geeignet.

    </body>
    </html>[/code]

    Attribute und Elemente-Bezeichner sollte man aufgrund der Lesbarkeit immer klein Schreiben.

    Ebenso ist es ratsam, Attributwerte immer in Anführungszeichen einzuschließen - allgemein wäre ggf. ein Umstieg auf XHTML 1.0 (von HTML 4.01) sinnvoll da durch die strengeren, aber einfacheren Sprachregeln weniger Fehler schneller gefunden werden können.

    1. Die Konsole gibt NICHTS aus. Der Klick auf den Button bringt leider nichts, also es passiert rein gar nichts.

      Hab den Code inzwischen deinen vorschlägen angepasst und schonmal danke dafür, aber es funktioniert leider immer noch nicht.

      1. Die Konsole gibt NICHTS aus. Der Klick auf den Button bringt leider nichts, also es passiert rein gar nichts.

        Das glaub ich nicht. Welchen Browser nutzt Du? Mein IE8 und mein FIrefox Portable zeigen beide einen Fehler an. Natuerlich mit dem von Dir gepostetem Code. Ich gehe davon aus der ist 1:1 uebertragen.

        --
        Vergesst Chuck Norris.
        Sponge Bob kann unter Wasser grillen!
      2. Die Konsole gibt NICHTS aus.

        Dann bedienst du die Fehlerkonsole nicht richtig. Ich erhalte sofort eine entsprechende Fehlermeldung.

        Opera:

        Syntax error at line 101 while loading:
        }
        ^
        expected '}', got <end of file>

        Firefox:

        Fehler: missing } after function body
        Quelldatei: -
        Zeile: 109

        Internet Explorer:

        '}' erwartet
        Code: 0
        URI: -
        Zeile: 109
        Zeichen: 0

        Der Klick auf den Button bringt leider nichts, also es passiert rein gar nichts.

        Sicher passiert etwas, steht übrigens dann auch (nachvollziehbar) in der Fehlerkonsole.

        Hab den Code inzwischen deinen vorschlägen angepasst und schonmal danke dafür, aber es funktioniert leider immer noch nicht.

        Ich sagte ja, dass das nichts damit zu tun hat.

  2. Hi!

    suit hat ja schon auf die Fehlerkonsole hingewiesen. Als kleiner extra Hinweis:
    Formatierung von Scripten ist keine Spielerei. Mit den richtigen Einrueckungen wuerde Dir schon was auffallen.

    Wenn ich eine Funktion schreibe, dann ist das erste, den Funktionskoerper zu erstellen. Der wird dann gefuellt:
    Schritt 1:

      
    function test()  
    {  
    }
    

    Schritt 2:

      
    function test()  
    {  
     if(1==1)  
     {  
     }  
    }
    

    Schritt 3:

      
    function test()  
    {  
     if(1==1)  
     {  
       alert("Einrueckungen sind toll!");  
     }  
    }
    
    --
    Vergesst Chuck Norris.
    Sponge Bob kann unter Wasser grillen!
    1. Formatierung von Scripten ist keine Spielerei.

      Aber eine "Wissenschaft" :)

      Mit den richtigen Einrueckungen wuerde Dir schon was auffallen.

      http://de.wikipedia.org/wiki/Einrückungsstil

      Empfehlenswert ist 1TBS oder zur Not der GNU-Stil.

      Banner oder vergleichbares sind für HTML oder C-ähnliche Sprachen nicht geeignet. Die sind vorrangig bei Python oder VBS zu Hause.