
下記コードからフロートチャートを考えているのですが、.appendChildと.createElementの違いが分からず困っております。
下記コードのHTMLはどのようなコードになるのでしょうか?
confirm_area.textContent = '';
var div;
var child;
child = document.createElement("h2");
child.appendChild(document.createTextNode('確認画面'));
confirm_area.appendChild(child);// confirm_area の末尾に child を追加
div = document.createElement("div");
child.appendChild(document.createTextNode("名前:" + namae_value));
div.appendChild(child);// div の末尾に child を追加
confirm_area.appendChild(div);// confirm_area の末尾に div を追加
div = document.createElement("div");
child.appendChild(document.createTextNode("コメント:" + message_value));
div.appendChild(child);// div の末尾に child を追加
confirm_area.appendChild(div);// confirm_area の末尾に div を追加
div = document.createElement("div");
child = document.createElement("input");
No.1ベストアンサー
- 回答日時:
こんばんは
ご提示のスクリプトは断片を切り出したものなので、きちん完結したものにはなっていません。
(ですので、正確な結果を記載することはできません。)
>.appendChildと.createElementの違いが分からず困っております。
〇〇.appendChild(××)
は「要素〇〇の子要素として××を追加する」というメソッドです。
これに対して、
document.createElement(◇◇)
は「◇◇の要素を新しく生成する」ものです。
(メソッドの英語表記もそのような感じになっていますよね?)
例えば、
let div = document.createElement('div');
div.textContent = 'テスト';
を実行すると、HTMLでいうところの
<div>テスト</div>
を作成したのと同様のことになります。
ただし、生成しただけなので、これだけでは画面には表示されません。
画面上に表示するには、実在する要素に追加する必要があります。
例えば、上記に続けて
document.body.appendChild(div);
のような処理を行えば、body要素に「<div>テスト</div>」が追加され、その結果として「テスト」という語句が表示されるようになります。
※ 上記は説明の都合上、HTMLのタグを用いていますけれど、実際の処理は全てDOMに対して行われます。
No.2
- 回答日時:
要素を作る操作と、文書構造ツリー内に組み込む操作の違いです。
ウェブ画面は DOM と呼ばれる文書構造ツリーにより管理されるので、
(createした)要素をツリー内に(appendで)組み込まなければいけません。
参考)
https://developer.mozilla.org/ja/docs/Web/API/Do …
https://developer.mozilla.org/ja/docs/Web/API/No …
https://developer.mozilla.org/ja/docs/Web/API/El …
余談ではありますが、
ご提示のコードはとてもバギーなので、動作結果など分かりません。
以下の様に書き直すことをお勧めします。
例)
var E = function(parent, name, text) {
_ var child = document.createElement(name);
_ child.appendChild(document.createTextNode(text));
_ parent.appendChild(child);
_ return child;
}
E(confirm_area, 'h2', '確認画面');
E(confirm_area, 'div', '名前');
...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
- JavaScript 【JavaScript】検索がヒットした場合、プルダウンをオープンで表示させる方法 2 2023/09/06 14:02
- HTML・CSS pythonのコードについてご教示ください 1 2024/01/14 05:39
- JavaScript 出発駅A、到着駅Bを選択すると、2.3㎞と170円と返るようにしたいです。 1 2024/01/26 08:33
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- その他(プログラミング・Web制作) pythonでのカーソル移動がずれる 2 2023/07/30 08:51
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excle VBA とweb上の検索を利用...
-
Null またはオブジェクトではあ...
-
重い処理とはどのようなものが...
-
DOM要素を削除しても、イベント...
-
プルダウンを複数使い、ページ...
-
codejump 模写コーディングgall...
-
ほとんどのブラウザに対応した...
-
XMLでのAttributeを持ったNode...
-
onload時にPostBackを発生させ...
-
Latexに関する質問です。
-
ラジオボタンやコンボボックス...
-
javascriptの基本的なことだと...
-
webページ上のTabキーの動き
-
ブックマークレットの() 背景...
-
ie操作 フレームのURLが...
-
ActiveXobjectが作成できない
-
Boolean型配列中のTrueの有無を...
-
google apps scriptの終了のさせ方
-
jspからjavascriptの変数引継ぎ
-
for文を使って変数に値を入れる...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DOM要素を削除しても、イベント...
-
Latexに関する質問です。
-
excle VBA とweb上の検索を利用...
-
FireFoxのjavascriptで自動でキ...
-
乗換案内 VBAで操作したい
-
javascriptの基本的なことだと...
-
JavaScript window.openで開く...
-
TexでΣの添え字の位置直し
-
Null またはオブジェクトではあ...
-
UWSCでオンクリックのボタンを...
-
onload時にPostBackを発生させ...
-
WSHのIEオブジェクト操作後のク...
-
webページ上のTabキーの動き
-
ブックマークレットの() 背景...
-
javascriptのdocument.allにつ...
-
IE11 javascriptについて
-
Javascriptで定期的にF5を押す...
-
XMLでのAttributeを持ったNode...
-
document.onkeydownについて
-
iframeのソースを取得したい
おすすめ情報