Harald: responseXML mit IE

Hallo Community,

ich habe folgendes Problem: Ich nutze das JS Framework Mootools und mache einen Ajax-Request:

var req = new Request({
  method: 'post',
  url: 'ajax.php',
  data: {
    'something': 'get'
  },
  onComplete: function(response, responseXML)
  {
    $('content').set('html', responseXML.getElement('nameDesNodes').get('text'));
  }
}).send();

Dieser Aufruf bekommt als Antwort ein Node mit dem Namen nameDesNodes in welchem Als Inhalt ein Text steht. In FireFox (u.A.) klappt dieser Code hervorragend und der Text wird in das DIV mit dem Namen content eingefügt. Nun suche ich eine Version, die auch im Internet Explorer funktioniert.

Ich habe es unter anderem bereits damit versucht: responseXML.getElementsByTagName('nameDesNodes').item(0).nodeValue
Dies führte jedoch nicht zum gewünschten Ergebnis.
Ich hoffe, mir kann jemand einen Tipp in die richtige Richtung geben - vielen Dank!

  1. hi,

    url: 'ajax.php',

    das geht nicht mit jedem Browser. Manche schicken den Request auf gut Glück in dasselbe Verzeichnis, manche andere jedoch nicht. Verwende "/".

    Hotti

    1. url: 'ajax.php',

      das geht nicht mit jedem Browser. Manche schicken den Request auf gut Glück in dasselbe Verzeichnis, manche andere jedoch nicht. Verwende "/".

      Danke für die Antwort Hotti aber das XML wird korrekt zurückgeliefert. Der Header ist auf text/xml gesetzt. Es geht wirklich um die Auswertung des XML Objects...

      1. hi,

        Danke für die Antwort Hotti aber das XML wird korrekt zurückgeliefert. Der Header ist auf text/xml gesetzt. Es geht wirklich um die Auswertung des XML Objects...

        Guck Dir die Response und den Request an, guck Dir die Request- und Responseheader an. Im Zweifelsfall ändere Dein Script mal so, dass das in Dateien geschrieben wird, xml ist auch nur Text. Es gibt Browserabhängigkeiten, mit einem systematischen Vorgehen wirst Du die auch erkennen.

        Viel Erfolg,
        Hotti

        --
        Wenn der Kommentar nicht zum Code passt, kann auch der Code falsch sein.
    2. Hi,

      url: 'ajax.php',

      das geht nicht mit jedem Browser. Manche schicken den Request auf gut Glück in dasselbe Verzeichnis, manche andere jedoch nicht.

      Hast du irgendeinen Beleg, der das untermauert?

      Lokale Pfadangaben auflösen ist eine Aufgabe, die Browser seit Ewigkeiten beherrschen müssen - und damit hatten sie auch selten Probleme.
      Dass das jetzt in Kombination mit AJAX anders sein sollte, wäre mir neu.
      Ich vermute stark, dass hier eher wieder mal eine Fehldeutung deinerseits vorliegt - dass irgendeiner deiner AJAX-Bastelversuche mal wieder nicht so funktioniert hat, wie er gedacht war, und dass du statt deinen Fehler zu finden dir mal wieder irgendeine haarsträubende angebliche Weisheit über AJAX aus den Fingern gesaugt hast, die du jetzt auf Kosten ahnungsloser Fragesteller hier zum besten gibst; wäre ja nicht das erste Mal.

      MfG ChrisB

      --
      “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
      1. hi,

        Ich vermute stark, dass hier eher wieder mal eine Fehldeutung deinerseits vorliegt - dass irgendeiner deiner AJAX-Bastelversuche mal wieder nicht so funktioniert hat,

        Basteleien sind solche Pfad/Url-angaben wie oben gezeigt. Aus dem Alter bin ich raus ;-)

        Im Übrigen deutet die Problemstellung auf Browserabhängigkeiten. Und die fangen mit unvollständigen Pfadangaben an. Hilfreich ists auch, mal die komplette Serverumgebung in einer Ajax-Response auszugeben, da siehst Du auch Unterschiede in den Headern, die Browser senden. Mit ein bischen Überlegung kriegst Du jedes Ajaxproblem gelöst, die Fehlerkonsole ist nicht alles.

        Schöne Grüße,
        Horst Haselhuhn

        1. Hi,

          Basteleien sind solche Pfad/Url-angaben wie oben gezeigt. Aus dem Alter bin ich raus ;-)

          Beides nicht wahr.

          Im Übrigen deutet die Problemstellung auf Browserabhängigkeiten. Und die fangen mit unvollständigen Pfadangaben an.

          Nochmal: Quatsch. Mit relativen Pfadangaben umzugehen, ist das täglich' Brot jedes Browsers.

          Warum du relative Pfadangaben hartnäckig als „unvollständig“ bezeichnest, erkläre bitte mal. Vermutlich haben wir da schon wieder eine Stelle vorliegen, an der du ein Verständnisproblem vorliegen hast, das du lieber wegerklärst, in dem du dir selbst irgendeinen Hokuspokus als Ursache ausdenkst, anstatt es vernünftig zu untersuchen und dabei deinem eigentlichen Fehler auf die Schliche zu kommen.

          Mit ein bischen Überlegung kriegst Du jedes Ajaxproblem gelöst, die Fehlerkonsole ist nicht alles.

          Du brauchst mir nicht erzählen, wie man sinnvolles und logisches Debugging betreibt.
          Darum ging es mir hier auch gar nicht, sondern nur um deine Vermutung, die vollkommen aus der Luft gegriffen scheint, und die inzwischen vom Frager auch schon entkräftet wurde.

          MfG ChrisB

          --
          “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
          1. hi,

            Warum du relative Pfadangaben hartnäckig als „unvollständig“ bezeichnest, erkläre bitte mal.

            Da fehlt mir leider die Zeit, Dir das zu erklären. Finde es selbst heraus, warum relatitve Pfandangaben gelegentlich zu Fehlern führen und zu Abhängigkeiten, die schwer zu überschauen sind.

            In meinem Framework verwende ich Pfadangaben, die auf jedem Webserver funktionieren, meine Pfadangaben beziehen sich auf DOCUMENT_ROOT. Diese Variable ist nicht umsonst auf dem Webserver konfiguriert. Auf DOCUMENT_ROOT bezogene Pfadangaben haben unter anderem den Vorteil, dass sie vom Protokoll unabhängig sind.

            Wenn Du Relative Pfadangaben verwenden willst, ist das Deine persönliche Angelegenheit, vielleicht fehlt Dir auch ganz einfach nur die Erfahrung.

            viele Grüße,
            Horst Haselhuhn

            --
            Ein Rohrkrepierer ist der untaugliche Versuch einen Schuss abzufeuern.
            1. Hi,

              Warum du relative Pfadangaben hartnäckig als „unvollständig“ bezeichnest, erkläre bitte mal.

              Da fehlt mir leider die Zeit, Dir das zu erklären.

              Nein, dir fehlen wohl eher wieder mal die Worte.

              Finde es selbst heraus, warum relatitve Pfandangaben gelegentlich zu Fehlern führen und zu Abhängigkeiten, die schwer zu überschauen sind.

              Die für *dich* schwer zu überschauen sind. Das ist dann aber deiner Projektplanung und -strukturierung geschuldet.

              In meinem Framework verwende ich Pfadangaben, die auf jedem Webserver funktionieren, meine Pfadangaben beziehen sich auf DOCUMENT_ROOT. Diese Variable ist nicht umsonst auf dem Webserver konfiguriert. Auf DOCUMENT_ROOT bezogene Pfadangaben haben unter anderem den Vorteil, dass sie vom Protokoll unabhängig sind.

              So ein Quatsch, was haben clientseitige Requests mit irgendeinem serverseitigen Wurzelverzeichnis zu tun?
              Bitte beantworte die Frage nur, wenn dir wirklich nicht klar ist, warum nichts. Keinen ausweichenden, pseudoamüsanten Kram, in dem du wieder mit irgendwelchen Erfahrungen argumentierst, die du hier nicht wirklich fachlich untermauerst.

              Wenn Du Relative Pfadangaben verwenden willst, ist das Deine persönliche Angelegenheit, vielleicht fehlt Dir auch ganz einfach nur die Erfahrung.

              Ja, oder dir der Überblick.
              Sinnvoll mit relativen Pfadangaben umzugehen, ist tägliches Brot eines jeden Web-Developers.

              MfG ChrisB

              --
              “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
  2. »»responseXML.getElement('nameDesNodes').get('text'));
    Ist responseXML kein DOM-Document? Wenn ja, was ist dann getElement und get?