2012-09-11 82 views
0

我嘗試將內容分配給變量時遇到問題。如何將內容分配給元素?

var test=document.getElementsByClassName('current') 
var title='test name'; 
//doesn't show in my div element. 
test.innerHTML=title; 

,但它並沒有在目前的元素

我的HTML

<div class='current'> </div> 

是否有反正我可以嘗試解決這個問題說明了什麼?非常感謝。

+0

vanillajs不是jquery。 – Shmiddty

回答

2

document.getElementsByClassName返回 元素數組 NodeList。你要麼必須遍歷該列表或搶到的第一個元素(如果這是你要修改的一個),並設置的innerHTML該元素:

test[0].innerHTML = title 
0

變量測試將返回HTML DOM對象的數組因此,它的職責是通過向其添加數組索引來指定要定向哪些元素。

var test=document.getElementsByClassName('current')[0] 
//return the first found DOM object with the matching class 
+0

它返回一個NodeList,而不是一個數組。一個數組包含Array.prototype中的所有方法,但NodeList沒有。 – some

+0

對!但訪問目標元素的方式與訪問數組的方式完全相同! – spaceman12

+0

如果使用方括號表示,訪問看起來是相同的,但還有其他方式可以訪問數組中的元素。你使用了錯誤的術語,因此不會收到儘可能多的提示。你甚至可能會陷入低谷。 – some

相關問題