<script language="JavaScript" src="navbar.js"></script>
<script language="JavaScript" src="dhtmllib.js"></script>
<script language="JavaScript" src="dfload.js"></script>
Das funktioniert auch wunderbar, doch nur die
<javascript> anweisungen werden ignoriert!
Von wem? Hast Du Dir den generierten Code mal im Browser
angesehen?
Wenn ich jetzt diesen Inhalt in einer HTML Datei im
gleichen Verzeichnis abspeichere, dann wird das Java
Script eingebunden.
Wie kann ich also das JS einbinden ? (Ich muss es
wohl auslagern, weil wenn ich es direkt in die
cgi-file einbinde, gibt es einen 500er Internal
Server Error).
Ich denke, alles funktioniert zunächst einmal genau so,
wie Du es haben willst.
Das CGI-Programm generiert ein HTML-Dokument, der
Browser findet darin JavaScript-Code, isoliert die URLs
und schickt weitere HTTP-requests zum Webserver, um
diese Dateien nachzuladen. So weit, so gut.
Aber jetzt beginnt das Problem. Denn die URLs für die
JavaScript-Dokumente, die Du nachgeladen haben willst,
scheinen im selben Verzeichnis zu liegen wie Deine
CGI-Anwendung!
Der Webserver dürfte allerdings so konfiguriert sein,
daß *alles*, was in diesem Verzeichnis liegt, als CGI-
Anwendung interpretiert wird. Er versucht also, diese
JavaScript-Dateien *auszuführen*, statt ihren Inhalt an
den Browser zu schicken. Damit hat er nun leider keinen
durchschlagenden Erfolg. ;-)
Und das löst den 500er-Server-Error aus.
Ich würde an Deiner Stelle den JavaScript-Code direkt
im CGI-Perl-Skript generieren. (Der Übersichtlichkeit
halber in separaten Perl-Modulen.)
Die zweitbeste Lösung wäre es m. E., diese JavaScript-
Dateien in ein anderes Verzeichnis zu verlagern, welches
vom Webserver nicht als CGI-Verzeichnis interpretiert
wird.