Instead of grabbing all elements in the beginning, I’d suggest just selecting the order
s, and looping through their children by selecting them inside the loop:
var orders = xmlDoc.getElementsByTagName('order');
for(i=0; i<orders.length; i++) {
var order = orders[i];
var customerid = order.children[0];
var status = order.children[1];
var item = order.children[2];
var name = item.children[0];
var price = item.children[1];
var qty = item.children[2];
}
If you don’t know if the children will be in that order, use getElementsByTagName
:
for(i=0; i<orders.length; i++) {
var order = orders[i];
var customerid = order.getElementsByTagName('customerid')[0];
var status = order.getElementsByTagName('status')[0];
var item = order.getElementsByTagName('item')[0];
var name = item.getElementsByTagName('name')[0];
var price = item.getElementsByTagName('price')[0];
var qty = item.getElementsByTagName('qty')[0];
}
Note: use lower cased variable names, since title case is used for classes
CLICK HERE to find out more related problems solutions.