質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

334閲覧

入力した文字が上書きされないようにしたい

hitonoko

総合スコア42

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2022/08/09 02:53

編集2022/08/09 03:25

前提

簡単なカレンダーアプリを作っています。
文字を追加で入力する機能の実現方法がわからず詰まっています。

実現したいこと

文字を追加で入力できるようにしたい

発生している問題・エラーメッセージ``

入力した文字のみが出力されてしまい新たに文字を追加すると上書きされてしまう

### 該当のソースコード ```ここに言語名を入力 <html> <body> <select id="select_box" size="1"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="31">31</option> </select> <input type="text" id="input" /> <button type="button" onclick="buttonClick()">登録</button> <br/> <br/> <table border="1"> <tbody> <tr> <td>1</td> <td id="td_1">&nbsp;</td> </tr> <tr> <td>2</td> <td id="td_2">&nbsp;</td> </tr> <tr> <td>3</td> <td id="td_3">&nbsp;</td> </tr> <tr> <td>4</td> <td id="td_4">&nbsp;</td> </tr> <tr> <td>31</td> <td id="td_31">&nbsp;</td> </tr> </tbody> </table> </body> <script> function buttonClick() { var select_number = document.getElementById("select_box").value; var input_value = document.getElementById("input").value; document.querySelector("#td_" + select_number).innerHTML = input_value; console.log(("#td_"+select_number).value+input_value); } </script> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

slemntqe

2022/08/09 03:10 編集

前回の質問( https://teratail.com/questions/b0j89y8sthelc5 )ではソースコードが綺麗に貼り付けられていましたが今回は何故汚くなっているのですか?適当に質問しても回答が得られると甘えていますか?訂正して下さい。
guest

回答1

0

ベストアンサー

js

1document.querySelector("#td_" + select_number).innerHTML = input_value;

ここで既存の値を無視して上書きしています。上書きではなく追加しましょう。たとえば:

js

1document.querySelector("#td_" + select_number).insertAdjacentHTML( 2 'beforeend', `<p>${input_value}</p>`);

投稿2022/08/09 03:08

編集2022/08/09 03:08
int32_t

総合スコア20884

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問