Scripte wird abgebrochen... aber warum?
BoFiaZ
- javascript
Hi,
ich habe eine JavaScrip-Datei die einige anderen Library`s von jQuery per document.write einbindet und eigentlich ein Formular überprüfen soll. Dies funktioniert jedoch nicht, aber offensichtlich nicht wegen einer falschen Angabe im Script sondern weil das Script generell abgebrochen wird. Seltsam ist jedoch das es läuft sobald ich zwischen das erste document.write und dem zweiten ein alert() schreibe.
So funktioniert das Script:
alert("1");
document.write("<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js' type='text/javascript'></script>");
alert("2");
document.write("<script src='http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js' type='text/javascript'></script>");
$(document).ready(function(){
alert("3");
$("#Kontaktformular").validate();
alert("4");
});
alert("5");
Aber so jedoch nicht (alert("2");) wurde entfernt:
alert("1");
document.write("<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js' type='text/javascript'></script>");
document.write("<script src='http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js' type='text/javascript'></script>");
$(document).ready(function(){
alert("3");
$("#Kontaktformular").validate();
alert("4");
});
alert("5");
Kann mir jemand sagen warum das Script so nicht läuft? Ich kann ja nun schlecht überall alert ausgeben damit das Teil läuft. Ich bin etwas ratlos...
Danke für Eure Hilfe!
Hi,
Kann mir jemand sagen warum das Script so nicht läuft?
Höchstvermutlich wird die Fehlerkonsole des Browsers das können.
MfG ChrisB
Da steht:
<b>$ is not defined</b>
mit einem Verweis auf diese Zeile:
$(document).ready(function(){
Nicht wirklich hilfreich... ($) sollte ja schon dabei stehen...
Nicht wirklich hilfreich... ($) sollte ja schon dabei stehen...
Ich finde schon, d.h. das Framework ist nicht ordnungsgemäß geladen geworden.
Struppi.
Gibt es denn keine Möglichkeit mehrere JavaScript Dateien zu importieren ohne dafür jedesmal alles direkt in das HTML Dokument zu schreiben? So wie es mit CSS auch möglich ist?
Wie soll das mit createElement funktionieren? Ich muss noch hierfür ein HTML Tag bereitstellen den ich dann quasi mit den Daten befülle. Das ist doch in einer JavaScript Datei garnicht möglich. Könnt ihr mir vielleicht mal ein Beispiel dafür geben? Vielen Dank!
Hi,
Wie soll das mit createElement funktionieren? Ich muss noch hierfür ein HTML Tag bereitstellen den ich dann quasi mit den Daten befülle.
Hä?
Könnt ihr mir vielleicht mal ein Beispiel dafür geben?
Du erzeugst ein neues SCRIPT-Element, stattest es mit den erforderlichen Attributen aus, und hängst es ins Dokument ein.
MfG ChrisB
Hallo Struppi,
Ich finde schon, d.h. das Framework ist nicht ordnungsgemäß geladen geworden.
^
noch
Gruß, Jürgen
Hi!
Was in einem Script-Block mit document.write ins DOM geschrieben wird, ist erst hinter diesem Block verfügbar. Versuche es besser mit document.createElement('script');
.
Gruß, LX
Hallo LX,
Was in einem Script-Block mit document.write ins DOM geschrieben wird, ist erst hinter diesem Block verfügbar. Versuche es besser mit
document.createElement('script');
.
da kann es aber sein, dass das Script asynchron geladen wird. Siehe
http://www.j-berkemeier.de/test/Nachladen.html
und vor allem im Quelltext die Kommentare.
@BoFiaZ
wenn du dein Script erst nach dem Laden der Seite startest, sollte es auch mit document.write funktionieren. Das Setzen des onload-Eventhandlers am body darfst du dann natürlich nicht mit einer der nachgeladenen Funktionen machen.
Gruß, Jürgen