2017-06-06 55 views
0

(我希望这个问题不是太愚蠢我几乎是一个新手在JavaScript) 我解析通过一个XML文件的书籍标题,我发现每个标题由这样做。检查XML中的值是否是未定义的(Javascript)

(xml).find('title')[i].childNodes[0].nodeValue 

现在,我只是一个计数器,线是在一个while循环。 我遇到的问题是我对while循环的条件。我希望在xml中没有更多标题可供查找时停止迭代。现在,每当xml用完标题时,我都会收到异常。

我想我想让我的while循环的东西条件沿此线:

(while(xml).find('title')[i].childNodes[0].nodeValue != undefined) 

,甚至做一个for循环沿

for(i = 0; i < numberoftitles.length; i++) 

,但我行不知道如何实际获得数字,或者while循环的语法。

+0

可以你发布的XML,以便它很容易得到想法? – shv22

回答

0

假设你有类似下面的XML结构,并且每本书元素都有冠军吧:

<BOOK> 
    <TITLE>ABC><TITLE/> 
    .. 
</BOOK> 
<BOOK> 
    <TITLE>PQR</TITLE> 
    .. 
</BOOK> 

您可以使用以下方法来得到所有的标题值:

var tmp = xmlDoc.getElementsByTagName("TITLE"); 

for(var i = 0; i < tmp.length; i++) 
{ 
    console.log(tmp[i].childNodes[0].nodeValue); 
}