2015-06-18 39 views
-1

我正在修改wordpress的一個插件,我有一個小問題。當我在一個數組中搜索一個id時,控制檯返回那個形式[0] .getElementById不是一個函數。getElementById與一個數組Javascript

這是我的代碼。

var form = document.getElementsByClassName("modal-body"); 
var i=0; 
while (i<(form.length)) { 
    var tag = form[i].getElementById("em-booking"); 
    if(tag) { 
     var carles = form[i].getElementById("formulari-cemcat"); 
     carles.style.display = "none"; 
    } 
    i++; 
} 

也許有人可以幫助我,看看我的問題。

太感謝你了,

普約爾

+0

哪一行是給出錯誤? – Imad

+0

你能發佈你的HTML代碼嗎? –

+0

一個誰downvoted應該真的解釋爲什麼。這樣的新手問題出了什麼問題? – jazZRo

回答

5

getElementById is only defined on document。沒有必要能夠在元素上調用它,因爲在整個文檔中ID應該是唯一的。

在文檔中有多個具有相同ID的元素是無效的。

如果你真的有多個具有相同ID的元素,你應該修復它並使用類。然後,你可以這樣做:

var tag = form[i].querySelector(".em-booking"); 

僅供參考,formNodeList,而不是一個數組。