嘿伙计们,我在循环某些 XML 时遇到了麻烦。我试图捕获元素并将它们用作 js 变量。我的 XML 是。
<box>
<thing>
<id>5</id>
<numbers>
<number>4</number>
<number>6</number>
</numbers>
</thing>
<thing>
<id>2</id>
<numbers>
<number>8</number>
<number>5</number>
<number>9</number>
</numbers>
</thing>
<thing>
<id>88</id>
<numbers>
<number>78</number>
</numbers>
</thing>
</box>
我的 JS。
ajax(site, params)
var things = xmlDoc.getElementsByTagName("thing");
for (i=0; i<things.length; i++){
var id = things[i].getElementsByTagName("id")[0].firstChild.nodeValue;
var numbers = things[i].getElementsByTagName("numbers");
var value;
for (n=0; n<numbers.length; n++){
var number = numbers[n].getElementsByTagName("number");
value = value + number;
}
id = value;
}
我遇到的问题是,当我抓取元素时,它似乎抓取了整个页面中的所有元素。
并将它们添加到价值中,所以我最终得到
id #1 = 110;
id #2 = 100;
id #3 = 78;
还有另一种方法可以实现我在这里尝试做的事情吗?