我正在解析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文件中的格式。