質問するログイン新規登録

回答編集履歴

1

修正

2018/08/23 20:12

投稿

退会済みユーザー
answer CHANGED
@@ -1,1 +1,56 @@
1
- `<textarea>` は 子要素 `<span>` を持つことはできません。文法違反です。
1
+ `<textarea>` は 子要素 `<span>` を持つことはできません。文法違反です。
2
+
3
+ ---
4
+
5
+ # サンプル
6
+
7
+ 表示用の `textarea` と 送信用の `textarea` を分けるのがポイント
8
+
9
+ ```html
10
+ <!DOCTYPE HTML>
11
+ <html lang="ja">
12
+ <head>
13
+ <meta charset="UTF-8">
14
+ <title></title>
15
+ <style type="text/css">
16
+ .hidden {
17
+ visibility: hidden;
18
+ height: 0;
19
+ width: 0;
20
+ }
21
+ </style>
22
+ </head>
23
+ <body>
24
+ <form action="" method="post">
25
+ <p>
26
+ <!-- name 属性をつけない -->
27
+ <input type="text" id="nicename" value="nicename" />
28
+ </p>
29
+ <p>
30
+ <!-- name 属性をつけない -->
31
+ <textarea id="text" cols="30" rows="10">メッセージ</textarea>
32
+ </p>
33
+
34
+ <!-- name 属性をつける -->
35
+ <textarea id="text_sending" name="text_sending" class="hidden"></textarea>
36
+
37
+ <p>
38
+ <button id="btn" type="button">送信</button>
39
+ </p>
40
+ </form>
41
+ <script type="text/javascript" src="//code.jquery.com/jquery-3.1.1.min.js"></script>
42
+ <script type="text/javascript">
43
+ $(function () {
44
+ var nicename = $('#nicename').text();
45
+ var message = $('#text').val();
46
+ var contents = '<span class="hide">' + nicename + '</span>' + message;
47
+ $("#text").val(contents);
48
+ $("#text_sending").val(message);
49
+ $("#btn").on('click', function () {
50
+ $('form').submit();
51
+ });
52
+ });
53
+ </script>
54
+ </body>
55
+ </html>
56
+ ```