AJAX einbinden von JS-librarys

Hallo,

ich beschäftige mich gerade mit AJAX und stehe vor einem Problem, wo ich um schnelle Aufklärung bitte :smile:.

Also, ich habe eine Hauptdatei, die aus mehreren Div-Containern besteht. Wenn ich nun per AJAX jeden einzelnen Div-Container befülle, stellt sich mir die Frage, wo binde ich die JS-Librarys ein (z.B. ). In die Hauptdatei oder in die einzelnen Dateien die ich per Ajax in die Hauptdatei lade.

Frage 2, die sich auf das vorhergehende bezieht, was ist, wenn ich in zwei Div-Container auf der Seite etwas lade und beide benötigen dieselbe Bibliothek, dann wäre es doch sinnvoll, die JS-Library nur auf der Hauptseite einzubinden, was aber nicht funktioniert ??

Ich hoffe ich habe mich verständlich ausgedrückt.

Danke an die Fachwelt :smile:

Hallo Chris,

um einen Ajax-Request durchzuführen braucht man nicht gleich eine UI.
Mehr ist das nicht:


function Laden(URL, ID){
if (window.XMLHttpRequest) { req=new XMLHttpRequest()}
else { req=new ActiveXObject(„Microsoft.XMLHTTP“) }
req.open(„GET“, URL , true)
req.send()
req.onreadystatechange=function() {
if(req.readyState==4 && req.status==200) {
document.getElementById(ID).innerHTML=req.responseText}}
}

Aufrufe der Funktion Laden() Parametern:
URL(URI der Datei) und der ID (Id des Elementes, wo der Response reingeschrieben werden soll)

Laden('http://usw.de/datei.ext','elementId')

JS-Library nur auf der Hauptseite einzubinden, was aber nicht
funktioniert ??

Du hast wahrscheinlich Frames.
Du kannst Javascript-Funktionen der Hauptseite aus einem Frame aufrufen, indem du parent davor setzt:
parent.Laden()
Aber Vorsicht!!
In dem obigen Beispiel wird das Element des Hauptfensters geändert.
Um das Frame-Element zu ändern muss der frame benannt werden:

fenstername.document.getElementById(ID).innerHTML=req.responseText

Gruß
Klaus

Hi!

Ich würde dir JQuery empfehlen. Dies ist in kleines aber extrem starkes Framework. Die darin enthaltene AJAX-Funktion ist bestens geeignet für Ajax-requests. Die Funktion bietet verschiedene Events mit der du unter anderem Fehler gut abfangen kannst. Ausserdem funktioniert die Ajax-Funktion in allen Browsern.

URL:
http://jquery.com
http://api.jquery.com/category/ajax/

LG, Volker

danke :wink:, verwende ich bereits…

meine eigentliche Frage zielte mehr darauf ab, wo ich meine eigenen javascript-funktionen unterbringe, in der test.html oder in der xyz.html

in der Datei xyz.html steht:
$(‚div#anzeige‘).load(‚test.html‘);

thx :wink:

Hi!

Die Javascriptfunktionen würde ich in ein separates .js file unterbringen und dann per script-Tag im Header der html-Datei einbunden.

LG,
Volker

hey volker :wink:,

das ist mir schon klar, aber in welcher datei, in der test.html einbinden oder in der xyz.html, bis jetzt binde ich es in der test.html ein.

gruß Chris