Требуется много кода и рабочий фрагмент не может быть создан, потому что мы не можем поместить XML-файл здесь.
Этот ответ предполагает, что ваш ответ от XMLHttpRequest
имеет значение null, и проблема не заключается ни в одной из ваших функций синтаксического анализа.
Также кажется, что вы слишком усложнили процесс запроса, передав его многим функциям, когда он сам по себе довольно прост.
Вот пример, который я сделал локально, чтобы правильно записать XML в консоль:
<!doctype html>
<html>
<head>
<title>A7-Questions2</title>
</head>
<body>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
if (xhttp.readyState == 4 && xhttp.status == 200) {
var xml = xhttp.responseXML;
// Logs just fine for me. You can do your parsing here.
console.log(xml);
}
};
xhttp.onerror = function() {
// Display error message.
var displayDiv = document.getElementById('display');
displayDiv.textContent = 'XMLHttpRequest failed status: ' + xhttp.status;
};
xhttp.open('GET', './path/to/xml.xml');
xhttp.send();
</script>
</body>
</html>