AJAX Internet Explorer lädt genau 1mal nach

  • Servus,
    also wie der Titel bereits sagt habe ich ein Problem mit dem berühmt-berüchtigten *kotz* internet explorer.
    neuerdings habe ich an einem chat programm gearbeitet, und es funktioniert überall, ausser im ie.
    ich habe auch bereit browserweichen für die ajax request erstellung eingebaut:


    alles wunderbar.
    das problem ist, wenn ich jetzt chatten will mit dem ie, dann zeigt er mir die ganze zeit die selbe nachricht an, weil der response sich im ie irgendwie nicht aktualisiert.
    ich denke mal, das problem ist nicht neu, hab aber bisher nirgends eine lösung gefunden.
    danke für eure hilfe,
    makroy

  • wieso arbeitest du nich mit jquery? da sind die ajaxfaxen schnell gemacht

    ich habe mir auch schon mal überlegt, auf sowas zurückzugreifen. aber mir wäre eine eigene lösung lieber.
    schliesslich möchte ich vor dem problem nicht davonlaufen, sondern es lösen ;)

    Einmal editiert, zuletzt von makroy (31. Dezember 2009 um 15:42)

  • um es mal bildlich festzuhlten:
    dir sind also 15 zeilen code lieber als 3
    und
    nen framework bedeutet für dich davonlaufen, obwohl es dein problem löst?

    ich meine für nen 5-zeiler normalen code lohnt es sich bestimmt nich nen framework zu nutzen, aber bei solch sachen wie ajax, wo man zusätzlich noch auf krasse crossbrowsertauglichkeit angewiesen ist lohnt es sich auf jeden fall

  • so kann mans auch sehen.
    aber ich habe prinzipiell eine abneigung gegen fremdcode (also frameworks) und möchte lieber alles selber lösen. für mich gilt sowieso, warum einfach wenns kompliziert doch so schon ist ;)

    btw die lösung des problems:

    This happens because Internet Explorer ignores the no-cache directive, and caches the results of ajax calls. Then, if the next request is identical, it will just serve up the cached version. There's an easy workaround, and that is to just append random string on the end of your query.

    Code
    xmlHttp.open("GET","blurb.php?"+Math.random();

    3 Mal editiert, zuletzt von makroy (1. Januar 2010 um 15:38)