我对xml很陌生,我正在尝试使用JQuery parseXML()搜索一个xml文件。我编写了下面的代码来搜索xml文件中的<name>标记,并输出每个name的值。
当我运行代码时,我得到以下两个错误:
syntaxisfout
index.html:1:1
Error: Invalid XML: test.xml
jquery.min.js:2:1820我使用了本教程:http://api.jquery.com/jQuery.parseXML/
这是我使用的xml文件结构:
<store>
<product>
<name>product name</name>
<price>price</price>
<platform>platform</platform>
</product>
</store>这是我使用的JQuery代码:
xmlDoc = $.parseXML( 'test.xml' ); //path to xml file
$xml = $( xmlDoc );
$name = $xml.find( "name" );
$(document).each(function(){
$('body').append('<p>'+ name + '</p>');
});有人能说出我做错了什么吗?
发布于 2015-03-08 16:55:20
问题是您正在使用一个文件名作为xml参数。$.parseXML中没有解析文件的工具。它解析XML字符串。如果需要从单独的文件中加载XML,则需要将其放入ajax或以其他方式将文件加载到js变量中:
xmlStr = '<store>'
+ ' <product>'
+ ' <name>product name</name>'
+ ' <price>price</price>'
+ ' <platform>platform</platform>'
+ ' </product>'
+ '</store>';
xmlDoc = $.parseXML(xmlStr);
$xml = $(xml);
// do stuff使用ajax:
$.ajax({
url: 'url/for/text.xml',
dataType: 'xml'
}).done(function (xmlDoc) {
$xml = $(xmlDoc);
// do stuff
});https://stackoverflow.com/questions/28929083
复制相似问题