2010-01-29 3 views
7

ich meine ... Lassen Sie sich, dass wir gerade einen AJAX-Request und inser das Ergebnis in einem div # Ergebnis machen ..Wenn Sie den Inhalt (ob_flush) einer AJAX-Anfrage leeren, wird der Inhalt geladen.

Im Backend des Skript Verwendung ob_flush() die Header zu senden, aber nicht die Anforderung beenden bis es beendet (mit Ausfahrt oder ob_flush_end)

der Inhalt in den #result geladen wird nur, wenn die Anforderung beenden (Ausfahrt oder ob_flush_end) oder es wird jedes Mal das Skript geladen werden Senden Sie die Kopfzeile an ob_flush?

Update:

I jQuery load() verwenden werden, die Anfrage & PHP macht es

+0

Soweit ich weiß, gibt es kein ob_end. Es gibt jedoch ob_end_flush und ob_end_clean, von denen keiner die Anfrage "beendet"; Sie deaktivieren lediglich die Pufferung der Ausgabe. – bish

+0

@bish - Danke .. Korrigiert :) –

Antwort

4

Ja zu beantworten, wird Inhalt zurückgegeben werden, aber das Readystate des XHR-Objekts nicht auf 4 gesetzt werden, so Wenn Sie darauf angewiesen sind, Ihr div zu aktualisieren (was die meisten AJAX-Auto-Updates der meisten JS-Bibliotheken tun), werden Sie es nicht automatisch sehen.

+0

Weder mit jQuery? :/ –

+2

Ich glaube nicht. Ich habe das Gefühl, dass das, was Sie hier wollen, nicht AJAX, sondern COMET ist (http://en.wikipedia.org/wiki/Comet_%28programming%29). – glomad

+0

Das ist ein wirklich nettes Feature, aber nicht das, wonach ich suche .... noch nicht. –

Verwandte Themen