使用AJAX读取XML子元素的值

时间:2014-11-20 22:20:17

标签: jquery ajax xml

我正在使用ajax读取XML文档,如何阅读孩子们的价值? 这就是我的XML格式:

<Music Title="Everything"> 
    <Artist Index="0" Format="FLAC">Zwei</Artist>
    <Artist Index="1" Format="MP3"/>
</Music>

这就是我使用ajax

读取属性的方法
var loading = $.ajax({
    type:   "GET",
    url:    'stuff.xml',
    dataType: "xml"
});
loading.done(function(data) {
xmlDoc = $(data);
    var current = xmlDoc.find('Music[Name="Everything"] Artist[Index=0]');
    var append = current.attr('Format');  //=?
    //Read artist value
});

我想阅读艺术家的价值,即Zwei,是否有内置函数?

2 个答案:

答案 0 :(得分:1)

使用jQuery find()方法时,可以使用text()函数检索文本内容。例如:

$(function() {
   var d = $.parseXML('<Music Title="Everything"><Artist Index="0" Format="FLAC">Zwei</Artist><Artist Index="1" Format="MP3"/></Music>');
   console.log("Here is the text: " + $(d).find("Music Artist").text());
});

答案 1 :(得分:0)

首先选择艺术家:

var current = $(xmlDoc).find("Artist");

现在current被填充为所有艺术家的数组。您可以通过这种方式访问​​该数组:

var append = current.eq(1).attr('Format'); //an output of this will display: MP3

这是一个FIDDLE:http://jsfiddle.net/bb8whgj2/