2014-09-21 89 views
1
var task = [document.getElementById('*'), 
      document.getElementById('+')]; 

var i;  
var displayfield = document.getElementById('displayarea'); 

displayfield.disabled=true; 


for(i=0;i<task.length;i++){ 

    task[i].onclick = function(){ 

     console.log('entered?'); 

     displayfield.innerHTML = task[i].id; 

     console.log('clicked'); 

     console.log(task[i].id.length); 
    } 
} 

財產「身份證」我得到這個錯誤「無法讀取屬性‘身份證’的未定義」 .. 但是當我鍵入任務[0]或任務在我的瀏覽器控制檯[1]給出正確的結果,如「*」和「+」....無法讀取的不確定

回答

0

這是一個古典錯誤。

您已經定義了我作爲一個全局變量,所以你的後循環i的值將是= 2

當你點擊元素,它將始終調用任務[2]這是不確定的。

做你想做的事,你可以在functon

task[i].onclick = function(){ 
    console.log(this.id); 
} 
+0

我怎麼能犯這樣的錯誤中調用這個..反正感謝的人.... – Prime 2014-09-21 08:48:04