Есть файл xml
| Код | <?xml version="1.0" encoding="windows-1251"?> <InfoPacket> <A> <AName>1</AName> <Info> <InfoName>1,1</InfoName> </Info> <Info> <InfoName>1,2</InfoName> </Info> </A>
<A> <AName>2</AName> <Info> <InfoName>2,1</InfoName> </Info> </A> </InfoPacket>
|
пытаюсь вывести список
| Код | function GetElementValue(xmlNode,name) { var res = ""; var node = xmlNode.selectSingleNode(name); if (node!=null) res = node.text; return res; }
var xml = new ActiveXObject("MSXML2.DOMDocument"); xml.async = false; xml.resolveExternals = false; xml.validateOnParse = false; xml.load(XmlFileName); var xmlA = xml.documentElement.selectNodes("//A"); document.write('<P>Всего: '+xmlA.length+'');
for (var i=0; i<xmlA.length; i++) { var xmlItem = xmlA[i]; var AName = GetElementValue(xmlItem,"AName"); var xmlInfo = xml.documentElement.selectNodes("//Info"); if (AName!="") Response.write("<P>"+xmlInfo.length+" <B>"+AName+"</B><BR>"); for (var j=0; j<xmlInfo.length; j++) { var xmlItem = xmlInfo[j]; var InfoName = GetElementValue(xmlItem,"InfoName"); if (InfoName!="") document.write("<B>"+InfoName+"</B><BR>"); }
|
выводит
1 1,1 1,2 2,1
2 1,1 1,2 2,1
а должен выводить 1 1,1 1,2
2 2,1
Что делаю не правильно? |