通过JavaScript访问XML
我有一个XML文件,正试图从中提取数据。XML文件如下所示通过JavaScript访问XML,javascript,jquery,xml,ajax,Javascript,Jquery,Xml,Ajax,我有一个XML文件,正试图从中提取数据。XML文件如下所示 <doc> <str name="name">Rocky</str> <str name="Last_name">balboa</str> <str name="age">42</str> <str name="sex">M</str> <str name="dob">
<doc>
<str name="name">Rocky</str>
<str name="Last_name">balboa</str>
<str name="age">42</str>
<str name="sex">M</str>
<str name="dob">2012-09-09</str>
</doc>
<doc>... </doc>
<doc>... </doc>
<doc>... </doc>
我在这里做错了什么?任何人都可以指出。您应该在使用xml之前对其进行解析(如果ajax调用返回xml,则无需进行解析)。
注意:
元素,而您有
元素var xml = "<doc><str name=\"name\">Rocky</str><str name=\"sex\">M</str><str name=\"dob\">2012-09-09</str></doc>",
xmlDoc = $.parseXML( xml ),
xml = $( xmlDoc ),
name = xml.find( "str[name='name']" );
alert (name.text());
var xml=“RockyM2012-09-09”,
xmlDoc=$.parseXML(xml),
xml=$(xmlDoc),
name=xml.find(“str[name='name']”);
警报(name.text());
您可以使用Jquery解析xml来导航dom,例如
var xml='Rockybalboa42M2012-09-09Rocky1';
$(文档).ready(函数(){
xmlDoc=$.parseXML(xml);
$xml=$(xmlDoc),
$xml.find('doc')。每个(函数(){
警报($(this).find('str[name=“name”]')).text()
})
})
您的xml格式不正确,也永远不要使用DOM遍历方法来解析依赖于浏览器的xml,请始终使用某种标准解析器,例如在jquery中,您可以使用.parseXML
,如果成功,请回拨重试
success : function(data) {
var xml=data;
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc );
$.each($xml.find("str"),function(){
alert($(this).attr("name"));
});
}
当您尝试选择以下标记时:
<str name="name">Rocky</str>
洛奇
不要使用$(this.find('name')
您应该使用$(this.find('str[name=“name”])
对于每个str标记,此错误会出现很多次。出现了什么问题。。请详细说明您的问题……如果没有您的帮助,很难检测到错误。请您指出您从何处获得错误,或者未实现的预期行为是什么?Varun。正如你们看到的那个样,警报是空的。
success : function(data) {
var xml=data;
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc );
$.each($xml.find("str"),function(){
alert($(this).attr("name"));
});
}
<str name="name">Rocky</str>