この記事ではJavaScriptのcreateElement()の使い方を解説します。
この記事の目次
createElement()とは?使い方
createElement()メソッドは、document.createElement(tagName)といった形式で使われます。
引数のtagNameで指定されたHTML要素を生成します。
createElement()を使ったデモ
createElement()を使ったデモとサンプルコードです。
追加ボタンをクリックすると、イベントが発生します。
createElement()を使って、div要素を生成し、appendChild()で追加されています。(参考:「appendChildで要素の追加」)
デモ
サンプルコード
<input type="button" value="追加" onclick="createArea()">
<div id="parent">parentです。</div>function createArea () {
var area = document.createElement('div');
area.id = 'blue';
area.innerHTML = '追加された要素です。';
var parent = document.getElementById('parent');
parent.appendChild(area);
}#parent {
background-color: #eee;
padding: 10px;
}
#blue {
background-color: blue;
padding: 10px;
color: #fff;
}createElement('div')だけでは要素が生成されるだけなので、生成した要素をappendChild()で追加しましょう。
補足:appendChildは末尾、insertBeforeは直前に追加
上記のデモではappendChild()は、末尾に追加しました。
その反対で、特定の要素の直前に追加したい場合には、insertBefore()を使います。
下記の記事で紹介しています。
appendChild()応用編のデモ
先程は、追加するテキストが固定でしたが、今回は「フォームに入力したテキストを追加する」というデモです。
デモ
サンプルコード
<input type="text" id="form" onchange="createInputText()">
<ul id="parent">parentです。</ul>function createInputText () {
var form = document.getElementById("form");
var area = document.createElement('li');
area.id = 'blue';
area.innerHTML = form.value;
var parent = document.getElementById('parent');
parent.appendChild(area);
form.value = '';
}#parent {
background-color: #eee;
padding: 10px;
}
#blue {
background-color: blue;
padding: 10px;
color: #fff;
}
li {
margin: 5px;
}