Javascript XML解析错误:使用浏览器解析XML字符串时格式不正确';s内置解析器
我正在尝试使用JavaScript使用浏览器的内置解析器解析XML字符串。我的XML字符串如下所示:Javascript XML解析错误:使用浏览器解析XML字符串时格式不正确';s内置解析器,javascript,xml,xml-parsing,xsd,Javascript,Xml,Xml Parsing,Xsd,我正在尝试使用JavaScript使用浏览器的内置解析器解析XML字符串。我的XML字符串如下所示: <?xml version='1.0' encoding='UTF-8' ?> <xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocat
<?xml version='1.0' encoding='UTF-8' ?>
<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:schemaLocation='http://www.w3.org/2001/XMLSchema XMLSchema.xsd'
elementFormDefault='qualified'
version='1.0'>
<xsd:element name='probeMetadata' type='OASIS.System.Processor.LinuxProcessorProbe' />
<xsd:complexType name='OASIS.System.Processor.LinuxProcessorProbe'>
<xsd:complexContent>
<xsd:extension base='OASIS.System.Processor.ProcessorProbe'>
<xsd:sequence>
<xsd:element name='nice_time' type='xsd:unsignedLong' />
<xsd:element name='iowait_time' type='xsd:unsignedLong' />
<xsd:element name='irq_time' type='xsd:unsignedLong' />
<xsd:element name='soft_irq_time' type='xsd:unsignedLong' />
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name='OASIS.System.Processor.ProcessorProbe'>
<xsd:sequence>
<xsd:element name='idle_time' type='xsd:unsignedLong' />
<xsd:element name='system_time' type='xsd:unsignedLong' />
<xsd:element name='user_time' type='xsd:unsignedLong' />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
parser = new DOMParser();
xmlDoc = parser.parseFromString(text, "text/xml");
x = xmlDoc.documentElement.childNodes;
document.getElementById("Text1").value = x[3].nodeName;
这里的“文本”位于XML之上。这个代码没有任何意义。我刚开始只是想测试一些简单的东西。我在w3school.com上测试了XML的有效性,它没有给我错误,因此我认为XML中没有错误。以下内容适合我。我使用的是Chrome 20.0.1132.21 beta-m
<html>
<head>
<script>
function test(){
var text = "<?xml version='1.0' encoding='UTF-8' ?>\r\n"
+ "<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'\r\n"
+ " xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'\r\n"
+ " xsi:schemaLocation='http://www.w3.org/2001/XMLSchema XMLSchema.xsd'\r\n"
+ " elementFormDefault='qualified'\r\n"
+ " version='1.0'>\r\n"
+ "<xsd:element name='probeMetadata' type='OASIS.System.Processor.LinuxProcessorProbe' />\r\n"
+ "<xsd:complexType name='OASIS.System.Processor.LinuxProcessorProbe'>\r\n"
+ "<xsd:complexContent>\r\n"
+ "<xsd:extension base='OASIS.System.Processor.ProcessorProbe'>\r\n"
+ "<xsd:sequence>\r\n"
+ " <xsd:element name='nice_time' type='xsd:unsignedLong' />\r\n"
+ " <xsd:element name='iowait_time' type='xsd:unsignedLong' />\r\n"
+ " <xsd:element name='irq_time' type='xsd:unsignedLong' />\r\n"
+ " <xsd:element name='soft_irq_time' type='xsd:unsignedLong' />\r\n"
+ "</xsd:sequence>\r\n"
+ "</xsd:extension>\r\n"
+ "</xsd:complexContent>\r\n"
+ "</xsd:complexType>\r\n"
+ "<xsd:complexType name='OASIS.System.Processor.ProcessorProbe'>\r\n"
+ "<xsd:sequence>\r\n"
+ " <xsd:element name='idle_time' type='xsd:unsignedLong' />\r\n"
+ " <xsd:element name='system_time' type='xsd:unsignedLong' />\r\n"
+ " <xsd:element name='user_time' type='xsd:unsignedLong' />\r\n"
+ "</xsd:sequence>\r\n" + "</xsd:complexType>\r\n"
+ "</xsd:schema>"
parser = new DOMParser();
xmlDoc = parser.parseFromString(text, "text/xml");
x = xmlDoc.documentElement.childNodes;
document.getElementById("Text1").value = x[3].nodeName;
}
</script>
</head>
<body>
<input type="button" value="click" onClick="test()"/>
<input type="text" name="Text1" id="Text1"/>
</body>
</html>
功能测试(){
var text=“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”
+“\r\n”+“\r\n”
+ ""
parser=新的DOMParser();
xmlDoc=parser.parseFromString(text,“text/xml”);
x=xmlDoc.documentElement.childNodes;
document.getElementById(“Text1”).value=x[3].nodeName;
}
您使用的浏览器是什么?如何加载XML?您得到的确切错误消息是什么?为什么不使用?使用由编写标准的组织支持的服务是有意义的。我使用的是Chrome 19。parseFromString为您加载XML。我收到了以下消息:“XML解析错误:格式不正确位置:第1行,第96列:”@RobG:我使用您在上一条评论中提供的链接测试了我的XML。XML通过了验证测试。@DarshanPuranik您能将您正在使用的XML输入添加到您的问题中吗?我没有正确格式化XML。我忘了整件事。\r\n你能告诉我为什么它们如此重要吗。谢谢