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...
			}
 
		});
	}

Leave a Reply