XML-DOM-Parser-Fehler
Wenn Firefox-Parser einen Fehler feststellt, wird es ein XML-Dokument laden, die den Fehler enthält.
Parser-Fehler in Firefox
Wenn Sie versuchen, ein XML-Dokument zu öffnen, ist es ein Parser-Fehler (Parser-Fehler) auftreten können.
Und Internet-Explorer-Browser, wenn Firefox ein Fehler aufgetreten ist, lädt es das XML-Dokument, das den Fehler enthält beschrieben.
XML-Fehler Document-Root-Name ist "ParserError". Dies wird verwendet, um Fehler zu überprüfen.
XML-Fehler (XML Error)
Im folgenden Code, werden wir der Parser eine schlechte Form von XML-Dokumenten zu laden.
(Sie können in unserem XML - Tutorial Lesen Sie mehr über die gute und effektive Form von XML.)
Beispiele
xmlDoc.async=false;
xmlDoc.load("note_error.xml");
if (xmlDoc.documentElement.nodeName=="parsererror")
{
errStr=xmlDoc.documentElement.childNodes[0].nodeValue;
errStr=errStr.replace(/</g, "<");
document.write(errStr);
}
else
{
document.write("XML is valid");
}
Versuchen »
Siehe XML - Datei: note_error.xml
Beispiele erläutern:
- Laden von XML-Datei
- Überprüfen Sie, ob der Wurzelknoten Name ist "ParserError"
- Die Fehler String-Variable loading "errstr"
- Bevor der Fehler-String in HTML geschrieben ist, das Zeichen "<" ersetzt durch "& lt;"
Hinweis: In der Tat, nur Internet Explorer Ihre XML mit DTD überprüfen, wird Firefox nicht.
Cross-Browser-Fehlerprüfung
Hier schaffen wir eine XML-Loader-Funktion, überprüfen Parser-Fehler in Internet Explorer und Firefox:
Beispiele
{
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(dname);
if (xmlDoc.parseError.errorCode != 0)
{
alert("Error in line " + xmlDoc.parseError.line +
" position " + xmlDoc.parseError.linePos +
"nError Code: " + xmlDoc.parseError.errorCode +
"nError Reason: " + xmlDoc.parseError.reason +
"Error Line: " + xmlDoc.parseError.srcText);
return(null);
}
}
catch(e)
{
try //Firefox
{
xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.async=false;
xmlDoc.load(dname);
if (xmlDoc.documentElement.nodeName=="parsererror")
{
alert(xmlDoc.documentElement.childNodes[0].nodeValue);
return(null);
}
}
catch(e) {alert(e.message)}
}
try
{
return(xmlDoc);
}
catch(e) {alert(e.message)}
return(null);
}
Versuchen »
Siehe XML - Datei: note_error.xml
Beispiele erläutern - Internet Explorer:
- Die erste Zeile erstellt ein leeres Microsoft XML-Dokument-Objekt.
- Die zweite Zeile wird asynchrone Laden aus, um sicherzustellen, dass der Parser nicht die Ausführung des Skripts fortgesetzt, bevor das Dokument vollständig geladen ist.
- Die dritte Zeile zeigt den Parser ein XML-Dokument namens "note_error.xml" von zu laden.
- Wenn ErrorCode- Eigenschaft parseError Objekt und "0" ist anders, und die falsche Ausfahrt zu erinnern.
- Wenn Error-Code-Eigenschaft auf "0" und gibt ein XML-Dokument.
Beispiele erklären - Firefox:
- Die erste Zeile erstellt ein leeres XML-Dokument-Objekt.
- Die zweite Zeile wird asynchrone Laden aus, um sicherzustellen, dass der Parser nicht die Ausführung des Skripts fortgesetzt, bevor das Dokument vollständig geladen ist.
- Die dritte Zeile zeigt den Parser ein XML-Dokument namens "note_error.xml" von zu laden.
- Wenn die Rückgabe des Dokuments ist ein falsches Dokument, erinnert Fehler und beenden.
- Wenn nicht, gibt sie ein XML-Dokument.