2015-06-23 142 views
-1

的特性「值」,我有以下的JavaScript代碼,我得到一個錯誤,指出:遺漏的類型錯誤:無法讀取未定義的JavaScript

Uncaught TypeError: Cannot read property 'value' of undefined"

具體而言,在該行:if(inputArray[i].value===resultArray[4]){ ...

var inputArray=[ 
    document.getElementById("ain") 
    ,document.getElementById("ein") 
    ,document.getElementById("iin") 
    ,document.getElementById("oin") 
    ,document.getElementById("uin")]; 

var ii=0; 
while(ii<inputArray.length){ 
    if(inputArray[i].value===resultArray[4]){ 
     inputArray[i].style.backgroundColor="yellow"; 
     alert(resultArray[4]); 
    } 
    ii++; 
} 

有任何建議嗎?

+3

你在哪裏爲'inputArray [i]'定義變量'i'?我看到你定義了'ii',而不是'i' – Tom

+1

use:inputArray [ii] –

+0

你可以使用一種叫做「調試」的技術。在錯誤處放置一個斷點。然後檢查變量'i'和'inputArray [i]'的值。 –

回答

1

首先,您從不定義您在inputArray[i]中使用的變量i。但是,除此之外,你的代碼很混亂 - 你基本上正在做的是什麼for循環會爲你做什麼,但在while循環中,並且你正在循環外定義一些變量ii

for(var i = 0; i < inputArray.length; i++) { 
    if (inputArray[i].value === resultArray[4]) { 
    inputArray[i].style.backgroundColor = "yellow"; 
    alert(resultArray[4]); 
    } 
} 
相關問題