Internet Explorer 8 macht Ajax Probleme
Auf einer Anwendung, die auf einem IIS läuft und CakePHP als Framework nutzt, weigert sich der IE 8 Änderungen via Ajax zu speichern. Und warum? Na wegen dem Cache, wenn der Browserverlauf auf ‘Automatisch’ steht fragt diese Krücke gar nicht erst beim Server nach.
Ich wusste mir aufgrund gebotener Eile, nicht anders zu Helfen, als meine Ajax Requests um einen Timestamp zu erweitern.
function getTimeStamp(){ var t = new Date(); var ms = t.getTime(); return '/t:' + ms; }
Nicht besonders elegant aber es hat geholfen. Kein Wunder wenn der Browser sich seine Vormachtsstellung verspielt. Bin gespannt wann der unter 50% geht
Update
Hier ein Beispiel aus der Praxis:
function bulk_update(operation){ var url = '/admin/acls/operation/1' + getTimeStamp(); new Ajax.Request(url, { method: 'get', onSuccess: function(transport) { // Tu was }, onFailure: function(transport){ // Fürs Protokoll }, onLoading: function(transport){ // warte... } }); }
In diesem Zusammenhang:
- Von CakePHP, Ajax Problemen und der Security Komponente Wer die “Security” Komponente von CakePHP in seinen Projekte einsetzt,...
Hi, wo hast du das genau eingebaut?
Wir haben das gleiche Problem, dass AJAX-Requests nicht ausgeführt werden. Insbesondere die Kombi Windows 7 mit IE8 bringt hier den Fehler.
Besten Dank im Voraus.
Grüße
Jean Michel
Die Funktion habe ich einfach global in einer Javascript Datei hinterlegt und wenn ich dann die die Ajax URL zusammenbaue rufe ich die Funktion einfach am Ende auf. Ich ergänze den Artikel mal ein Praxisbeispiel…Augenblick…
Danke für die klaren, harten Worte und die detaillierte Lösung! Works like a charm.
danke
hat mir eben sehr geholfen. Scheiß internet explorer…
Top! Danke für die gute Lösung