我正在逐步浏览一堆 XML,试图在 javascript 中构建一个数组。
XML:
<?xml version="1.0" encoding="utf8" ?>
<session>
<id>12</id>
<name>20130520105033-0-1</name>
<userid>0</userid>
<changed>2013-05-20 11:16:31</changed>
<till>1</till>
<custid>1</custid>
<details>
<item>
<prodcode>TRD3066</prodcode>
<qty>1</qty>
<tax>15</tax>
<uprice>23.1</uprice>
<price>1</price>
</item>
<item>
<prodcode>DIC72000280</prodcode>
<qty>1</qty>
<tax>15</tax>
<uprice>278.26</uprice>
<price>1</price></item>
<item>
<prodcode>KRE22208</prodcode>
<qty>1</qty>
<tax>15</tax>
<uprice>4.65</uprice>
<price>1</price>
</item>
</details>
<comment></comment>
<customer_comment></customer_comment>
</session>
用于解析此的 Javascript:(在传递详细信息 xml 标记后)
function parse(details){
var ret=[];var tot=[];
jQuery(details).find("item").each(function(){
ret[0]= jQuery(this).find('prodcode').text();
console.log("parse "+ret[0]);
ret[1]= jQuery(this).find('qty').text();
ret[2]= jQuery(this).find('tax').text();
ret[3]= jQuery(this).find('uprice').text();
ret[4]= jQuery(this).find('price').text();
tot.push(ret);
console.log("tot="+tot);
});
return tot;
}
问题控制台结果是
解析 TRD3066 tot=TRD3066,1,15,23.1,1 解析 DIC72000280 tot=DIC72000280,1,15,278.26,1,DIC72000280,1,15,278.26,1 解析 KRE22208 tot=KRE22208,1,2208,1,2208,1, 15,4.65,1,KRE22208,1,15,4.65,1
这是其中一个晚上,我只是不明白为什么最后的数组不是所有的单个项目?