laqtoq: AJAX IE & FF empfangen unterschiedliche Daten

Hallo,

ich habe es mit einem wirklich komischen Problem zu tun. Ich rufe per AJAX einen php Script auf, der mir einen Datensatz aus einer DB zurückschickt.

Der php Script funktioniert einwandfrei und verschickt immer dieselben Daten, nur beim IE kommt nur die Hälfte an?

function openPAGE(ID) {
  http.open('get', 'XXX?page='+ID);
  http.onreadystatechange = setPAGE;
  http.send(null);
  document.getElementById('theID').value = ID;
 }

function setPAGE() {
  if(http.readyState == 4){
   var response = http.responseText;
   initEdit('form_content','edit',response);
   var x = new getObj('tree');
   x.style.visibility = 'hidden';
   x.style.display = 'none';
  }
 }

Irgendwelche Ideen? Der responseText ist übrigens HTML nur falls das eine Rolle spielt...

Vielen Dank

  1. Die Lösung ist, dass IE dumm genug ist den Inhalt von GET zu cachen...

    Einziges Workaround ist scheinbar post...

    toll!

    1. n'abend,

      Die Lösung ist, dass IE dumm genug ist den Inhalt von GET zu cachen...

      Das ist der IE nur dann, wenn du ihm nichts anderes erzählst. Schicke entsprechende Header in deinem Script. Du hast nicht angegeben, welche serverseitige Sprache du einsetzt, deshalb bekommst du ein PHP-Beispiel serviert. Solltest du eine andere Sprache einsetzen, finde die entsprechenden Funktionen um die Header zu schicken:

       header('Expires: Thu, 19 Nov 1981 08:52:00 GMT');  
      header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');  
      header('Pragma: no-cache');
      

      Einziges Workaround ist scheinbar post...

      Würdest du der URI den aktuellen Timestamp anhängen, wäre jede URI einzigartig, wodurch du den Browser-Cache austrickst.

      weiterhin schönen abend...

      --
      Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
      sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|