为什么:
document.getElementsByClassName('cke_source').setAttribute('name', "mymessage")
回归:
TypeError: Object #<NodeList> has no method 'setAttribute'
document.getElementsByClassName('cke_source')
正在正确返回对象。
答案 0 :(得分:5)
document.getElementsByClassName
将返回元素的节点列表(如数组)。所以,你需要像对待数组一样对待它。如果您只有一个元素,请尝试此操作:
document.getElementsByClassName('cke_source')[0].setAttribute('name', "mymessage")
答案 1 :(得分:5)
getElementsByClassName会返回一组项目,而不是单个项目。
var pColl = document.getElementsByClassName('cke_source');
for (var ii=0; ii< pColl.length; ii++)
{
pColl[ii].setAttribute('name', 'foo');
}