Lieber Spider,
ich zeige Dir mal (analog zu ChrisB), wie Du Dein Posting hättest formatieren müssen(!), damit erstens Unbedarfte wie ich _gleich_ verstehen, was Du willst, und damit zweitens Du selbst schon beim Fragen eventuell die Antwort findest, bevor Du Dein Posting überhaupt abschickst (ist mir oft genug so passiert).
-----------------
Liebes Forum,
in Zeile #xy meldet mein Browser folgenden Fehler:
[FehlerMeldungText]
Mir ist nicht klar, was mir diese Meldung sagen will. Hier ein Ausschnitt aus meinem Code, in dem die entsprechende Zeile durch einen Kommentar markiert ist:
function Zeitauswahl () {
if (document.Kontakt_Formular.erreichbar_von.selectedIndex == 0)
document.Kontakt_Formular.erreichbar_bis.selectedIndex = 0;
else if (document.Kontakt_Formular.erreichbar_von.selectedIndex == 1)
document.Kontakt_Formular.erreichbar_bis.selectedIndex = 1;
document.getElementById('0').disabled = true; // ### Fehlermeldung hier ###
else if (document.Kontakt_Formular.erreichbar_von.selectedIndex == 2)
document.Kontakt_Formular.erreichbar_bis.selectedIndex = 2;
document.getElementById('0').disabled = true;
document.getElementById('1').disabled = true;
else if (document.Kontakt_Formular.erreichbar_von.selectedIndex == 3)
document.Kontakt_Formular.erreichbar_bis.selectedIndex = 3;
document.getElementById('0').disabled = true;
document.getElementById('1').disabled = true;
document.getElementById('2').disabled = true;
}
-----------------
Spätestens jetzt hätte Dir auffallen sollen, dass Du Deine in if-Anweisungen gekapselten Anweisungen _immer_(!!) in geschweifte Klammern setzen solltest, auch wenn man diese bei einer einzelnen Anweisung weglassen könnte. Vergleiche:
if (success) {
alert("Hurra!");
alert("Nochmal HURRAAAA!!!!");
}
if (score > currentHighScore)
alert("Bestes Ergebnis!");
alert("Schönes Spiel!");
if (again) {
return start();
}
alert("Auf Wiedersehen.");
Wir sehen im ersten if-Block zwei Anweisungen, die beide nur dann ausgeführt werden sollen, wenn in der Variablen "success" ein Wert steht, der als true
interpretiert werden kann. Dafür benötigt es die geschweiften Klammern, da sonst der zweite alert-Aufruf immer(!) ausgeführt würde (wie im zweiten Fall nach "Bestes Ergebnis" mit "Schönes Spiel").
Um solche Stolperfallen zu vermeiden, notierst Du einfach immer(!!) die geschweiften Klammernpaare, auch wenn darin nur eine einzelne Anweisung steht. Dann sollte auch der JavaScript-Parser bei einem "unverhofften" else
nicht mehr ins Stottern kommen.
document.getElementById('0')
Noch etwas: ID-Werte müssen mit einer Nicht-Ziffer beginnen (z.B. Buchstabe oder Unterstrich). Das ist Vorschrift laut Spezifikation.
Liebe Grüße,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)