Javascriptについて質問です。 テキストエリア複数作り(テキストエリア1、2、3) 最後に指定のテキストエリア(まとめ)にボタンクリックして
Javascriptについて質問です。 テキストエリア複数作り(テキストエリア1、2、3) 最後に指定のテキストエリア(まとめ)にボタンクリックして テキストエリア1,2,3に入れていた文言をまとめに反映させたいのですが、 コードが上手く作れず、教えて頂けますでしょうか? 例:テキストエリア1:野菜 テキストエリア2:肉 テキストエリア3:果物 テキストエリア(まとめ):野菜 肉 果物 一つのテキストエリアから反映させるのは、作成できたのですが、複数だとわかりません。 <script language="javascript"> function TransV(){ var f=document.forms['f1']; f.elements['tx0'].value=f.elements['tx1'].value; } </script> <form name="f1"> <textarea name="tx1" Rows="5" cols="50"></textarea> <textarea name="tx0" Rows="5" cols="50"></textarea><br> <input type="button" value="GO" onclick="TransV()" > </form>
JavaScript | プログラミング・24閲覧・100
ベストアンサー
こんな感じですか? <form> <textarea class="tarea" Rows="5" cols="50"></textarea> <textarea class="tarea" Rows="5" cols="50"></textarea> <textarea class="tarea" Rows="5" cols="50"></textarea> <input type="button" id="button" value="GO"> <hr> <textarea id="summery" Rows="5" cols="50" readonly></textarea><br> </form> <script> document.querySelector('#button').addEventListener('click', function (e) { e.preventDefault; var text = ''; let elms = document.querySelectorAll('.tarea'); for (let i = 0; i < elms.length; i++) text += elms[i].value + "\n"; document.querySelector('#summery').value = text; }); </script> #IEさえ無視してよければ、querySelectorAllに直接 #forEachが書けるんですけどねぇ・・・
ご回答ありがとうございます。 かなり理想に近いです! 細か0いのですが、ボタンはテキストエリア(まとめ)の部分につけたいのですが、どうしたらよろしいでしょうか? 理由としては(テキストエリア1、2、3)テキストエリアの数は 実際は30~40ぐらいあるので、(まとめ)につけたいと思っております。 因みにIE無視してquerySelectorAllにforEachを書くとしたらどのように書きますでしょうか? 自分の環境がかなり限定されておりまして。 質問ばかりで申し訳ございませんが、ご教示くださいませ。
質問者からのお礼コメント
ありがとうございます! ボタンの件承知いたしました! クエリはやはり動かない環境でした涙 理想の形となりました! また、機会があればぜひよろしくお願い致します。
お礼日時:3/3 18:06