2016-11-24 144 views
-4

我从GET要求下面的输出:的Javascript迭代通过XML标签

<VALUE1>value1</VALUE1> 
<VALUE2>value2</VALUE2> 
... 
<VALUEn>valuen</VALUEn> 

我需要得到像阵列中的所有这些值:

[ 
    value1, 
    value2 
    .... 
    value 
] 

我试图迭代增量的值例如val,然后将其放在VALUE标记上,如 - VALUE[val],但没有运气。我使用xml2js库和我有的输出是value.VALUE。我可以通过value.VALUE1获得第一个值,但我应该如何迭代才能达到所有值?

+0

的[解析使用JavaScript XML(http://stackoverflow.com/questions可能的复制/ 17604071/parse-xml-using-javascript) – Liam

+0

或[XML在JavaScript中解析变量字符串](http://stackoverflow.com/questions/649614/xml-parsing-of-a-variable-string-in- javascript)或约100个其他问题/答案 – Liam

+0

如果我问一个问题,这意味着我已经花了一些时间在Google上搜索它。 –

回答

1

使用XPath的另一个替代得到它很容易

var outputArray = []; 
var xml = http.responseXML; 
for (i = 0; i < n; i++) 
{ 
    var tagValue = xml.evaluate('string(/ex:value'+ i +')', 
           xml, 
           nsResolver, 
           XPathResult.STRING_TYPE, 
           null); 
    outputArray.push(tagValue.stringValue); 
} 

你可以阅读有关XPath评估here