前提・実現したいこと
こんにちは。プログラミングはスク卒レベルの者です。この度初めて質問投稿します。質問の内容・質問の仕方など誤っている場合は申し訳ありません。
Gmailの作成画面のような簡単なエディタを作成しています。
エディタ箇所に入力したものをHTML化し、それをformで送信したいのですが、つまづいています。
(一部はサイトで見つけたものをコメントアウト部分もそのままコピペしています)
下記のコードは、作成中のものを少し簡易的にしたものです。
★★★★で印したところにどう記述すれば良いか、調べてもわかりませんでした。
似たような質問もいくつかあったと思いますが、自分のコードに当てはめることができませんでした...。調べ方が悪い・不勉強であること承知の上です<(_ _)>
function changeText()〜の箇所は、あと少し処理がありますが 数行削除しています。
最終的にはこの関数で得た結果をvalueに入れ、add.phpへ飛ばしてDBへ保存するという実装を目指しています。PHPは動作確認済みです。
大変恐縮ですが、どなたかご教示いただけないでしょうか。よろしくお願いいたします。
※実際は太字ボタンや赤文字ボタン、それに伴うJS記述がありますが、質問に関係ないと思い削除しています。
<!DOCTYPE html> <html> <head> <title>Gmailみたいなエディタ</title> <script> //innerText をサポートしない Web ブラウザと共通で使用するための //setText 関数を定義 function setAlter_innerText(element) { if (element.innerText) { element.setText = function (text) { element.innerText = text; } } else { element.setText = function (text) { element.textContent = text; } } return element; } //getElementById の短縮 var $id = function (id) { return document.getElementById(id); }; //コンテンツのロードが完了したら window.onload = function () { var editArea = $id('editArea'); //innerText を設定するためのメソッドを追加 setAlter_innerText(editArea); //★★★★★editAreaの文字をinnnerHTMLしてhiddenのvalueに入力したい★★★★★ function changeText(){ editArea.innerHTML }; } </script> </head> <body> <div id="editArea" contenteditable="true"><!--エディタエリア--></div> <form name="test2" action="add.php" method="post" enctype="multipart/form-data"> <input type="hidden" name="text_body" id="textBody" value="@@@@ココにeditArea.innerHTMLで得た結果を入れてsubmitしたい@@@"> <input type="submit" onclick="changeText()" value="送信"> </form> </body> </html>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。