| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Feb 2006
Beiträge: 7
| Problem mit Spry / xml im IE
Hallo, habe mir vor kurzem die neue Video2Brain Dreamweaver CS3 Profi Schulung gekauft und die vorgestellten Projekte einmal nachgebaut und auf eigene Übungsaufgaben übertragen. Jetzt zu meinem Problem: ich habe über die Spry-Optionen eine xml Datensatz angebunden um eine Referenzliste inkl. Bilder zu steuern bzw. zu ersetzen. Das funktioniert auch alles wunderbar im Firefox aber im Internet Explorer bekomme ich folgende Fehlermeldung: Exception caught while loading xml/referenzen.xml: [object Error] Ich muß noch dazusagen das ich die Sache bis jetzt nur lokal getestet habe. Könnte es daran liegen? Aber warum geht es dann im Firefox? Erst dachte ich ich hätte irgendwo im Code einen Fehler aber die mitgelieferten Projekte auf der Schulungs-DVD funktionieren ebenfalls im IE nicht. Also muß es ja am IE liegen, oder??? Ich bin mit meinem Latein am Ende - hoffe hier kann mir jemand helfen |
| | |
| | #2 (permalink) |
| nobody is perfect Registriert seit: Jul 2004 Ort: munich
Beiträge: 876
|
Servus, selbes Problem auch gehabt. Ja, das liegt am lokalen Betrieb. Denn bei lokalem Betrieb übergibt der IE kein XML, sondern lediglich den reinen responseText. Also musst du dir den Text vornehmen, der ja im Endeffekt die XML-Struktur wiederspiegelt. Beseitigen kannst du das folgendermaßen (ist jetzt aber nicht SPRY): Code: // meine onSuccess-Funktion
function fbLoadNavi(txt,xml) {
...
// das brauchst du für den IE
if (window.ActiveXObject) {
var toAppend = document.createElement('xml');
// packe den responseText in das innerHTML
toAppend.setAttribute('innerHTML',txt);
// damit man es wiederfindet, eine eindeutige ID
toAppend.setAttribute('id','_uniqueID');
// hängt das ganze irgendwo rein
document.body.appendChild(toAppend);
// suche den XML Zweig anhand der ID und schreib ihn in xml
xml = document.getElementById('_uniqueID');
// abschließend kann man das Tag auch wieder entfernen
document.body.removeChild(document.getElementById('_uniqueID'));
}
for(i = 0; i < xml.getElementsByTagName('xxx').length; i++) {
... // jetzt kannst du halt drauf zugreifen, das 'xxx' entspricht halt deinem XML-Tag
}
} Geändert von richtsteiger (27-09-2007 um 13:31 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Feb 2006
Beiträge: 7
|
vielen Dank für die schnelle Antwort. Aber ich komm da nicht so recht mit (ist das erste mal das ich was mit xml mache) ich habe den Code in den head meiner Site kopiert, weiß jetzt aber nicht was ich wie ändern muß function fbLoadNavi(txt,xml) { ... // das brauchst du für den IE if (window.ActiveXObject) { var toAppend = document.createElement('xml'); // packe den responseText in das innerHTML toAppend.setAttribute('innerHTML',txt); // damit man es wiederfindet, eine eindeutige ID toAppend.setAttribute('id','_uniqueID'); // hängt das ganze irgendwo rein document.body.appendChild(toAppend); // suche den XML Zweig anhand der ID und schreib ihn in xml xml = document.getElementById('_uniqueID'); // abschließend kann man das Tag auch wieder entfernen document.body.removeChild(document.getElementById( '_uniqueID')); } for(i = 0; i < xml.getElementsByTagName('xml/referenzen.xml').length; i++) { ... // jetzt kannst du halt drauf zugreifen, das 'xxx' entspricht halt deinem XML-Tag } } Gruß Felix |
| | |
| | #4 (permalink) | |
| nobody is perfect Registriert seit: Jul 2004 Ort: munich
Beiträge: 876
| Zitat:
Also wenn du nur üben willst bzw. deine Anwendung irgendwann sowieso auf 'nem Server läuft, dann arbeite beim Testen mit dem Firefox. Dann brauchst du dir auch nicht die Umstände machen, denn im lokalen Betrieb kann es auch noch das Problem geben, das beim IE der Status des XMLHttpRequest-Objektes trotz erfolgreichem Request falsch vorliegt, aber das würde hier zu weit gehen. Obwohl, das wäre auch mal ein Argument, sich intensiver mit der Funktionsweise von Ajax vertraut zu machen. | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |