如何解析以下XML并按索引获取值?以下示例有效,但它一次返回所有值。如何在每个循环内访问每个单独的节点值?有没有办法通过索引来做到这一点?
<?xml version="1.0" encoding="utf-8"?>
<!---->
<GetAccount>
<id>free2rhyme</id>
<password>letmein</password>
<name>jerry mcguire</name>
<age>29</age>
<sex>m</sex>
<location>salt lake city, utah</location>
<language>english</language>
<signup>00/00/0000</signup>
<confirmed>y</confirmed>
<status>a</status>
</GetAccount>
$.get('getAccount.xml', null, function (data) {
var getAccount = $(data).find('GetAccount').each( function(){
var value = $(this).text();
alert(value);
});
}, 'xml');
答案 0 :(得分:2)
这将迭代所有元素“获取帐户”子元素及其值:
$.get('getAccount.xml', null, function (data) {
var getAccountID = $(data).find('GetAccount').each( function(){
$('*', this).each(function(i,e){
alert('index='+i+' name='+e.tagName+' value='+$(e).text())
});
});
}, 'xml');
答案 1 :(得分:0)
jQuery几乎与HTML一样对待XML。 (处理XML文档时不存在.html()
方法。)因此,要获取<id>
节点的<GetAccount>
子节点的内容,请执行以下操作:
var getAccount = $(data).find('GetAccount').each(function(){
var value = $(this).find('id').text();
alert(value);
}