2016-05-17 100 views
0

我正在爲我的家庭作業運行簡單的JavaScript.JS正在使用DOM訪問XML表。當我運行這段代碼:將DOM節點值與字符串Javascript進行比較

... 
var famstatus = xmlDoc.getElementsByTagName('famstatus'); 
for (var i = 0 ; i<employee.length; i ++) 
{ 
document.getElementById("nam").innerHTML += famstatus[i].childNodes[0].textContent + " "; 
} 
... 

我得到:

Single Single Married Single Married.... etc. 

然而,當我嘗試包括IF語句不會達到預期的效果。這是我想要做的:

... 
for (var i = 0; i < employee.length ; i++) 
{ 
    if (famstatus[i].childNodes[0].textContent === "Single") 
    { 
    alert("found"); 
    } 
    else alert("not"); 
} 
... 

腳本從不警告「發現」,我只得到「不」。

+0

更換

if (famstatus[i].childNodes[0].textContent === "Single") 

在你的條件相比較,當你看起來有3個 「=」 的跡象? – masterforker

+0

是的,我試了==和===都沒有工作。 – VTodorov

+0

添加console.log(「famstatus [i] .childNodes [0] .textContent」)並查看控制檯 – derzunov

回答

1

我看不到你正在使用什麼文檔,所以很難調試,但可能有其他文本不明顯,所以字符串不相等。試着用

if (famstatus[i].childNodes[0].textContent.indexOf("Single") > -1) 
+1

它的工作非常感謝。 – VTodorov