回答編集履歴

2

追記

2017/02/12 16:17

投稿

s8_chu
s8_chu

スコア14731

test CHANGED
@@ -3,3 +3,93 @@
3
3
  HTMLの属性には、[イベント属性](https://w3g.jp/xhtml/dic/event)という特定のイベントが発生したときにjavascriptの実行がおこなえる属性が存在し、その属性は先頭に`on`がついています(例: **on**click, **on**input, など)。
4
4
 
5
5
  現在はイベント属性を使うことはHTMLの可読性を下げるなど、色々と不都合な点が出てきたため**推奨されていません**。
6
+
7
+
8
+
9
+ ---
10
+
11
+ **(追記)**
12
+
13
+ ```HTML
14
+
15
+ <!DOCTYPE html>
16
+
17
+ <html>
18
+
19
+ <head>
20
+
21
+ <meta charset="utf-8">
22
+
23
+ <meta name="viewport" content="width=device-width">
24
+
25
+ </head>
26
+
27
+ <body>
28
+
29
+ <form>
30
+
31
+ <label>
32
+
33
+ テキストボックス
34
+
35
+ <input type="text" id="textbox1">
36
+
37
+ </label>
38
+
39
+
40
+
41
+ <label>
42
+
43
+ テキストエリア
44
+
45
+ <textarea rows="2" id="textarea1"></textarea>
46
+
47
+ </label>
48
+
49
+ </form>
50
+
51
+
52
+
53
+ <script type="text/javascript">
54
+
55
+ <!--
56
+
57
+ document.getElementById("textbox1").addEventListener("input", function () {
58
+
59
+ checkForm(document.getElementById("textbox1"));
60
+
61
+ }, false);
62
+
63
+
64
+
65
+ document.getElementById("textarea1").addEventListener("input", function () {
66
+
67
+ checkForm(document.getElementById("textarea1"));
68
+
69
+ }, false);
70
+
71
+
72
+
73
+ function checkForm($this) {
74
+
75
+ var str = $this.value;
76
+
77
+ while (str.match(/[^A-Z^a-z\d\-]/)) {
78
+
79
+ str = str.replace(/[^A-Z^a-z\d\-]/, "");
80
+
81
+ }
82
+
83
+ $this.value = str;
84
+
85
+ }
86
+
87
+ //-->
88
+
89
+ </script>
90
+
91
+ </body>
92
+
93
+ </html>
94
+
95
+ ```

1

追記

2017/02/12 16:17

投稿

s8_chu
s8_chu

スコア14731

test CHANGED
@@ -1,3 +1,5 @@
1
1
  **※`From`タグはformタグの誤記だと仮定して回答します。**
2
2
 
3
3
  HTMLの属性には、[イベント属性](https://w3g.jp/xhtml/dic/event)という特定のイベントが発生したときにjavascriptの実行がおこなえる属性が存在し、その属性は先頭に`on`がついています(例: **on**click, **on**input, など)。
4
+
5
+ 現在はイベント属性を使うことはHTMLの可読性を下げるなど、色々と不都合な点が出てきたため**推奨されていません**。