理由:
document.getElementsByClassName('cke_source').setAttribute('name', "mymessage")
戻ります:
TypeError: Object #<NodeList> has no method 'setAttribute'
document.getElementsByClassName('cke_source')
オブジェクトを正しく返しています。
- jQueryはありません。
理由:
document.getElementsByClassName('cke_source').setAttribute('name', "mymessage")
戻ります:
TypeError: Object #<NodeList> has no method 'setAttribute'
document.getElementsByClassName('cke_source')
オブジェクトを正しく返しています。
getElementsByClassNameは、単一のアイテムではなく、アイテムのコレクションを返します。
var pColl = document.getElementsByClassName('cke_source');
for (var ii=0; ii< pColl.length; ii++)
{
pColl[ii].setAttribute('name', 'foo');
}
document.getElementsByClassName
要素のノード リスト (配列など) を返します。したがって、配列のように扱う必要があります。要素が 1 つしかない場合は、これを試してください。
document.getElementsByClassName('cke_source')[0].setAttribute('name', "mymessage")