2012-09-11 83 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

相关问题