2011-10-25 25 views
2

因爲我在循環中調用此代碼。但下面的代碼給我錯誤,因爲document.getElementsById不是一個函數。我應該怎麼做才能在循環中調用doc.getbyid。Javascript錯誤 - document.getElementsById不是函數

for (var z=1; z < i; z++){ 
     var textbox = document.getElementsById("a"+z).value; 
     var textbox2 = document.getElementsById("b").value; 
     var textbox3 = document.getElementsById("c").value; 
     alert(textbox); 
     alert(textbox2); 
     alert(textbox3); 
} 
+0

你是什麼要求?什麼是您正在尋找使用document.getElementsById的文本框的名稱? –

回答

5

這是因爲它getElementById(注意「元素」上缺少「s」)。如果你考慮這個問題,這是有道理的,因爲id值必須在文檔中是唯一的,所以只會有一個匹配的「元素」,而不是多個「元素」。

但是,有些方法會返回使用多個「元素」的多個元素,例如getElementsByTagName,因此您可能只是將它們混合起來。

1

該函數的名稱是getElementById

3

該函數不是getElementsById,而是getElementById。

上有元素

2

其實沒有複數形式,你需要使用如下:

for (var z = 1; z < i; z++) { 
    var textbox = document.getElementById("a"+z).value; 
    var textbox2 = document.getElementById("b").value; 
    var textbox3 = document.getElementById("c").value; 
    alert(textbox); 
    alert(textbox2); 
    alert(textbox3); 
}