tallman Geschrieben 14. Oktober 2008 Geschrieben 14. Oktober 2008 Hallo, ich versuche mich jetzt an AJAX, nur komme ich nicht dahinter, warum folgendes nicht funktioniert: Javascript: var xmlHttpObject = false; // Überprüfen ob XMLHttpRequest-Klasse vorhanden und erzeugen von Objekte für IE7, Firefox, etc. if (typeof XMLHttpRequest != 'undefined') { xmlHttpObject = new XMLHttpRequest(); } // Wenn im oberen Block noch kein Objekt erzeugt, dann versuche XMLHTTP-Objekt zu erzeugen if (!xmlHttpObject) { try { xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { xmlHttpObject = null; } } } // Laden der News function load_news(id) { xmlHttpObject.open('get','news.php?id='+id); xmlHttpObject.onreadystatechange = handleContent(); xmlHttpObject.send(null); return false; } // Ausgeben der News in den Tags function handleContent(style) { if (xmlHttpObject.readyState == 4) { document.getElementById('news').innerHTML = xmlHttpObject.responseText; } } HTML-Teil: <dl id="news"> <dt title="11.1.1999">Title</dt> <dd>Text</dd> </dl> Die PHP Datei gibt einen Text, ähnlich dem Text zwischen den dl-Tags aus, auch mit den dt und dd. Nur funktioniert das nicht. Der Aufruf der beiden Funktion klappt hervorragen. Und es werden auch keine Fehler ausgegeben. mfg
Aiun Geschrieben 15. Oktober 2008 Geschrieben 15. Oktober 2008 1., der übliche Spruch ^^: nimm dir ein Ajax-Framework zur Hand. ich empfehle Mootools, scriptaculous und prototype sind auch nicht schlecht, können aber nicht ganz so viel glaube ich. jQuery hat bei meinem test nicht gut abgeschnitten. 2. Test das innerHTML doch mal mit einem statischen Text/variable. 3. schaue nach was wirklich im responseText drin steht.
geloescht_JesterDay Geschrieben 15. Oktober 2008 Geschrieben 15. Oktober 2008 Der Aufruf der beiden Funktion klappt hervorragen. Und es werden auch keine Fehler ausgegeben. Der übliche Spruch ^^: "Geht nicht" ist keine ausreichende Fehlermeldung! Wird dein Serverskript überhaupt aufgerufen? Liefert es überhaupt was zurück? Was steht in deiner Antwort im Ajax-Aufruf? Hast du das auch einfach mal so "debugt", dir z.B. responseText einfach mal direkt ausgeben lassen? Findet er das richtige Element?
Scheppertreiber Geschrieben 15. Oktober 2008 Geschrieben 15. Oktober 2008 Das Beispiel müßte im FF funktionieren, der IE rafft das nicht ohne Probleme und reagiert unwirsch auf kleinste Fehler im Code. Mit innerHTML habe ich bei den IEs immer Ärger. Mit welchem Browser hast Du das probiert ?
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden