回车和制表符导致JavaScript无法解析XML节点

时间:2016-03-18 14:09:35

标签: javascript xml nodes

我正在解析XML文件,并且问题似乎与XML文件中的回车符(或可能是换行符)和制表符(或空格)有关。他们绊倒了我的JavaScript而没有返回任何内容而不是数据。

以下是JS代码的片段:

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
  if (xhttp.readyState == 4 && xhttp.status == 200) {
    fullXMLContent = xhttp.responseXML;
  }
};

xhttp.open("GET", xmlPathname, true);
xhttp.send();

var navLocationMain = fullXMLContent.getElementsByTagName("locationMainTitle");
projectLocationMain = navLocationMain[0].childNodes[0].data;
document.getElementById("Nav_Top_Left-courseLocationMain").innerHTML = projectLocationMain;

此XML工作并返回“简介”:

<locationMainTitle><![CDATA[<div style="margin-top: 12px">INTRODUCTION </div>]]></locationMainTitle>

此XML 有效并且不返回任何内容:

<locationMainTitle>
	<![CDATA[<div style="margin-top: 12px">INTRODUCTION </div>]]>
</locationMainTitle>

唯一的区别是第二个例子中的回车和制表符。这种情况发生在我迄今为止测试的所有浏览器中。

我正在努力保持可读性并更轻松地编辑格式,包括回车和XML文件中的选项卡。

我看到一个提到CR,LF,制表符或空格的引用可能会导致解析XML的问题但我不知道如何解决这个问题仍然保留了XML文件中的格式。

0 个答案:

没有答案