遍历XML使用jQuery

问题描述:

这是XML实例的样品部分遍历XML使用jQuery

<PivotSet> 
    <item> 
     <column name = "M">1</column> 
     <column name = "F">1640</column> 
    </item> 
    <item> 
     <column name = "M">2</column> 
     <column name = "F">5960</column> 
    </item> 
</PivotSet> 
<PivotSet> 
    <item> 
     <column name = "M">1</column> 
     <column name = "F">1700</column> 
    </item> 
    <item> 
     <column name = "M">2</column> 
     <column name = "F">7000</column> 
    </item> 
</PivotSet> 

应该为下面

1  
1640 1700 

2 
5960 7000 

你能帮助我,告诉我如何使用要做到这一点jQuery,请

与遍历XHTML的方式完全相同(因为它是XML)。 下面是一个例子:

var xml = '<PivotSet>[...]</PivotSet>'; 

var $xml = $(xml); 
$xml.find('column').each(function(){ 
    alert($(this).text()); 
});​ 

http://jsfiddle.net/uBv2L/


编辑:您的具体情况:

var $xml = $(xml); 
var out = '1\r\n'; 
$xml.find('column[name="M"]').filter(function(){ 
    return $(this).text()=='1'; 
}).each(function(){ 
    out+=$(this).next().text()+' '; 
}); 
out += '\r\n2\r\n'; 
$xml.find('column[name="M"]').filter(function(){ 
    return $(this).text()=='2'; 
}).each(function(){ 
    out+=$(this).next().text()+' '; 
}); 

alert(out); 

http://jsfiddle.net/uBv2L/1/

+0

很好的解决方案队友:)但如果XML包含其他值比1和2?如果我不知道节点值? – sameer 2012-03-07 11:30:57