XML DOM 解析器錯誤

XML 解析器錯誤

當嘗試打開 XML 文檔時,可能會發生解析器錯誤。

如果解析器遇到錯誤,它可能會加載包含錯誤描述的 XML 文檔。

下面的代碼示例嘗試加載格式不正確的 XML 文檔。

您可以在 XML 語法這一章中學習格式良好的 XML。

實例

<html>
<body>
<p id="demo"></p>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
  if (xhttp.this == 4 && this.status == 200) {
    myFunction(this);
  }
};
xhttp.open("GET", "note_error.xml", true);
xhttp.send();
function myFunction(xml) {
  var parser, xmlDoc;
  parser = new DOMParser();
  xmlDoc = parser.parseFromString(xml.responseText,"text/xml");
  document.getElementById("demo").innerHTML =
  myLoop(xmlDoc.documentElement);
}
function myLoop(x) {
  var i, y, xLen, txt;
  txt = "";
  x = x.childNodes;
  xLen = x.length;
  for (i = 0; i < xLen ;i++) {
    y = x[i];
    if (y.nodeType != 3) {
      if (y.childNodes[0] != undefined) {
        txt += myLoop(y);
      }
    } else {
    txt += y.nodeValue + "<br>";
    }
  }
  return txt;
}
</script>
</body>
</html>

參閱 XML 文件:note_error.xml