非同期通信でQ&A掲示板を作成しています。
JavaScript appendChild で親要素に子要素を追加する際、HTMLのクラスごとに判別するできるようにしたいのですが、変数名に - や _ や空白が変数名に使えずエラーが起きておりどうすべきか悩んでおります。
アドバイスお願い致します。
<!-- 表示したいHTML-->
<div id="confirm_area" style="display: block;">
<div class="title-partial parts"> <!-- title-partial + parts -->
質問タイトルテスト
</div>
<div class="namae-partial parts"> <!-- title-partial + parts -->
名前テスト
</div>
<div class="body-partial parts"><!-- body-partial + parts -->
コメントテスト
</div>
<div class="post-button"><!-- ボタンを押せなくする -->
<button type="button">入力画面へ戻る</button><button type="button" name="output">結果画面へ進む</button>
</div>
</div>
</div>
<!-- type、name、id、valueの順番 -->
</div>
</div>
<!-- 変数名でエラーが起きているコード -->
<script>
confirm_area.textContent = '';
var div;
var child;
// class
const board_form_partial_div = document.createElement("div");
// classの追加
board_form_partial_div.classList.add("board_form_partial");
// id
const js_board_form_partial_div = document.createElement('div');
// idの追加
js_board_form_partial_div.id = 'js_board_form_partial_div';
const questionHeader-partial_div = document.createElement("div");
questionHeader-partial_div.classList.add("questionHeader-partial");
div.appendChild(child); // div の末尾に child を追加
const title-partial parts_div = document.createElement("div");
title-partial parts_div.classList.add("title-partial parts");
child = document.createElement("p");
child.appendChild(document.createTextNode(title_value));
div.appendChild(child); // div の末尾に child を追加
const namae-partial parts_div = document.createElement("div");
namae-partial parts_div.classList.add("namae-partial parts");
child = document.createElement("p");
child.appendChild(document.createTextNode(namae_value));
div.appendChild(child); // div の末尾に child を追加
const body-partial parts_div = document.createElement("div");
body-partial parts_div.classList.add("body-partial parts");
child = document.createElement("p");
child.appendChild(document.createTextNode(question_value));
div.appendChild(child); // div の末尾に child を追加
const post-button_div = document.createElement("div");
post-button_div.classList.add("post-button");
child = document.createElement("button");
child.type = "button";
child.innerText = "入力画面へ戻る";
child.addEventListener("click", () => {
input_area.style.display = "block";
// 空文字を入れることで要素内を空にできる
confirm_area.textContent = '';
confirm_area.style.display = "none";
});
div.appendChild(child); // div の末尾に child を追加
child = document.createElement("button");
child.type = "button";
//name属性の追加・変更
child.setAttribute("name", "output");
child.innerText = "結果画面へ進む";
child.addEventListener("click", confirm_button_click);
div.appendChild(child); // div の末尾に child を追加
confirm_area.appendChild(div); // confirm_area の末尾に div を追加
input_area.style.display = "none";
confirm_area.style.display = "block";
})
.catch(error => {});
}
</script>
No.4ベストアンサー
- 回答日時:
案1. ローカル変数名をキャメルケースで書く
例)
var divTitlePartialParts = 要素;
divTitlePartialParts.append(子要素);
親要素.append(divTitlePartialParts);
案2. 変数名ではなくプロパティ名として書く
例)
var div = {};
div["title-partial parts"] = 要素;
div["title-partial parts"].append(子要素);
親要素.append(div["title-partial parts"]);
余談ではありますが
誤: 要素.classList.add("title-partial parts");
正: 要素.classList.add("title-partial", "parts");
参考)
https://developer.mozilla.org/ja/docs/Web/API/DO …
アドバイスありがとうございます。
案2. 変数名ではなくプロパティ名として書くについてお聞きしたいのですが、プロパティ名は class ごとに分けるべきでしょうか?
HTMLタグごとのみ分けるだけで良いのでしょうか?
※例(質問のコードにはないスタンプ選択部分のコードを書き換えてみました。)
※該当コード(sample.phpの304行目から408行目までに案1. ローカル変数名をキャメルケースで書く方法をsample.jsに案2変数名ではなくプロパティ名として書く方法についてお聞きしたいコードを書きました)
https://wandbox.org/permlink/ncJsnAA8BEgkpAx5
No.3
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript Javascriptのhtml出力についてappendChildはどのような意味があるのでしょうか? 2 2024/01/29 16:48
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript JavascriptでDom XSSの脆弱性対策を行いたい 2 2023/09/24 21:20
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
- JavaScript 【JavaScript】検索がヒットした場合、プルダウンをオープンで表示させる方法 2 2023/09/06 14:02
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
PythonやJavaScriptのように実質的に数の桁数を無限に扱える言語と、全く無限に使えない言
JavaScript
-
[初心者]javascriptのfor文でなぜか繰り返し処理をしない。理由がわかりません。
JavaScript
-
プログラミング言語の制作方法について
C言語・C++・C#
-
-
4
Javascriptエラーの原因が分からない
JavaScript
-
5
var exports = exports || {}; ← この意味を教えてください。
JavaScript
-
6
ものづくりに向いているプログラミング言語ってなんですか?家電にもプログラミングが使われてるとか
その他(プログラミング・Web制作)
-
7
Notepad++の関数リスト表示でC言語のプログラムが正しく表示できない。
C言語・C++・C#
-
8
HTMLタグに複数のクラスを設定する方法がわからない
JavaScript
-
9
double型が正常に認識されていない恐れ
C言語・C++・C#
-
10
昔のパソコン少年の武勇伝「店先のパソコンでゲームを作成し、それを売り、その金でパソコンを買う」本当?
その他(プログラミング・Web制作)
-
11
C++6.0でのresource.hについて
C言語・C++・C#
-
12
質問失礼します。 プログラム言語を一つも知らないのですが、C♯の勉強をしてみたいです。おすすめの教材
C言語・C++・C#
-
13
なんでブラウザでPHPを動かすためだけにOSにPython2(Python3)を入れて、C(GCC)
PHP
-
14
C言語をコンパイルするとコンピュータ上でどう動くかというコードになるみたいな説明をよく聞くのですがこ
C言語・C++・C#
-
15
ボタンが押されたらWebページの文字コードを 変える、というプログラミングを書きたいです。 目的は文
HTML・CSS
-
16
パイソンの
C言語・C++・C#
-
17
これの対応OSを教えて下さい。php-8.3.0-src.zip
PHP
-
18
VisualStudio2022でC言語プログラムで全角文字を使用すると不明なエラーが表示される
C言語・C++・C#
-
19
コードを直していただきたいです。 以下のコードはネットで拾ったものをほんの少しいじった物なのですが、
Visual Basic(VBA)
-
20
iOSゲームアプリが作りたいと思い色々と調べています。c言語は一通り学んだのでc++で作ろうかとぼち
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MAX関数を使ってからLEFT JOIN...
-
javascriptでスタイルを動的に...
-
URL末尾に特定の文字を含む場合...
-
javascriptテキストBOX色を元に...
-
[急ぎ] videoタグで埋め込んだm...
-
checkboxにチェックを入れると...
-
mysqlのINSERT文の重複回避の条...
-
jTweetsAnywhereでハッシュタグ...
-
HTMLとJavaScriptで作ったタイ...
-
マウスオーバーにてdivの切り替え
-
UWSC(マウス自動化ソフト)に...
-
10秒後に1秒ごとに1行づつ表示...
-
123456789の順番の並...
-
テキストボックスに入力された...
-
スタイルシートで画面を上下に...
-
JavaScript スライドの画像にリ...
-
textareaに画像を表示したい
-
アコーディオンメニューの開閉制御
-
キャラクターがぴょこんと飛び...
-
OpenCV での画素値の比較について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MAX関数を使ってからLEFT JOIN...
-
HTMLタグに複数のクラスを設定...
-
変数名をどのようにつけるのが...
-
401エラードキュメントを401.ht...
-
javascriptテキストBOX色を元に...
-
読み込んだQRコードをフォーム...
-
タブで開いてさらにタブ内をア...
-
createElementで作成した要素を...
-
removeEventListenerについて
-
表示・非表示のスクリプトで、...
-
HTMLとJavaScriptで作ったタイ...
-
HTMLとJavaScriptで作ったタイ...
-
getElementByIdの戻り値がnull...
-
指定したパスが現URLに含まれて...
-
[急ぎ] videoタグで埋め込んだm...
-
IFRAMEの表示/非表示を切り替え...
-
iframe内のリンクが飛ばないの...
-
removeAttribute()メソッドで削...
-
背景色を透明化
-
jQueryで同じid属性が複数あっ...
おすすめ情報