Zum Inhalt springen

Ajax - Inhalt eines HTML-Tags ändern


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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.

Geschrieben

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?

Geschrieben

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 ?

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...