Fehler in js-calendar
Ich benutze den js-calendar von
http://www.dynarch.com/projects/calendar/ .
Auf mehreren Seiten habe ich keine Probleme gehabt, auch nicht mit mehreren Instanzen in einem Script.
Nun bekomme ich in einem neuen Projekt plötzlich folgende Fehlermeldung:
Zeile: 33
Zeichen 2
Calendar._TT.DEF_DATE_FORMAT ist Null oder kein Objekt
Ich habe den Code tausend mal überprüft und auch alle Dateien noch mal ersetzt komme aber nicht auf die Lösung.
Vielleicht kennt ja jemand das Problem.
Antwort schreiben
Antwort 1 von noscript vom 22.10.2019, 12:37 Options
Ich fürchte dein Problem betrifft ein zu winziges Detail eines wahren Dschungels aus Scripten, um es aufgrund einer einzigen Fehlermeldung beantworten zu können.
Was auch immer in jener Zeile stehen mag: der JavaScript-Interpreter kennt es nicht bis er dorthin kommt. Vielleicht kommt er nur auf all deinen anderen Seiten nie dorthin, oder immer nur auf einem anderen Weg.
Welcher Browser gibt überhaupt diese Fehlermeldung ab? Was sagen die anderen dazu? Gibt es in der Firefox-Fehlerkonsole Warnungen? Falls nicht: ist die Anzeige von Warnungen überhaupt aktiviert?
Antwort 2 von Flupo vom 22.10.2019, 12:56 Options
Es könnte sein, dass beim Editieren des Codes (passiert auch manchmal unabsichtlich) was kaputt gegangen ist.
Die Originalversion des Codes um Zeile 33 (fett marliert) herum lautet folgendermaßen:
this.minYear = 1970;
this.maxYear = 2050;
this.dateFormat = Calendar._TT["DEF_DATE_FORMAT"];
[b]this.ttDateFormat = Calendar._TT["TT_DATE_FORMAT"];[/b]
this.isPopup = true;
this.weekNumbers = true;
Anderenfalls liegt der Fehler sehr wahrscheinlich in der zugehörigen Sprachdatei im Ordner "Lang". Darin werden die Formate definiert.
Schau mal in Zeile 120 u. 121 der Datei calendar-de.js
bei mir sieht die so aus:
Calendar._TT["DEF_DATE_FORMAT"] = "%d.%m.%Y";
Calendar._TT["TT_DATE_FORMAT"] = "%a, %b %e";
Gruß Flupo
Antwort 3 von gerdon vom 23.10.2019, 06:27 Options
Asche auf mein Haupt. Wie fast immer war es ein Flüchtigkeitsfehler. Ich hatte ein Tippfehler in der Pfadangabe zur calendar-de.js.
Es ist unglaublich, wie oft man so einen Fehler überlesen kann.
Alles wird gut.
Danke für die Unterstützung.