回答編集履歴
2
e.CodeだとEdgeHTMLだけ値が取得できていなかったのでe.Keyに修正
answer
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
private void inputEnter(KeyboardEventArgs e)
|
18
18
|
{
|
19
|
-
if (e.
|
19
|
+
if (e.Key == "Enter")
|
20
20
|
{
|
21
21
|
msg = "エンターはダメよ!";
|
22
22
|
isPrEvDef = true;
|
@@ -47,4 +47,11 @@
|
|
47
47
|
> 値なしで @on{EVENT}:preventDefault 属性を指定することは、@on{EVENT}:preventDefault="true" と同じことになります。
|
48
48
|
|
49
49
|
ってところでNGキーの場合だけ入力をキャンセルしてそれ以外は入力を受け入れると判断したのでこんな形になった
|
50
|
-
ちゃうかったらごめんね
|
50
|
+
ちゃうかったらごめんね
|
51
|
+
|
52
|
+
2020/03/24 19:31 編集 : e.CodeだとEdgeHTMLだけ値が取得できていなかったのでe.Keyに修正
|
53
|
+
動作確認したのは以下のブラウザ
|
54
|
+
Edge(EdgeHTMLの方)
|
55
|
+
Edge(Chroniumのベータ版の方)
|
56
|
+
Chrome
|
57
|
+
Firefox
|
1
送信エラーで編集内容が途中の内容に戻ってしまってたのでブラウザバックで復元してコピペやり直し
answer
CHANGED
@@ -11,9 +11,7 @@
|
|
11
11
|
@code
|
12
12
|
{
|
13
13
|
string txtarea { get; set; } = string.Empty;
|
14
|
-
|
15
14
|
string msg { get; set; } = string.Empty;
|
16
|
-
|
17
15
|
bool isPrEvDef { get; set; } = false;
|
18
16
|
|
19
17
|
private void inputEnter(KeyboardEventArgs e)
|
@@ -29,8 +27,24 @@
|
|
29
27
|
isPrEvDef = false;
|
30
28
|
}
|
31
29
|
}
|
32
|
-
|
33
30
|
}
|
34
31
|
```
|
35
32
|
|
36
|
-
エンター押しても改行されない
|
33
|
+
エンター押しても改行されない
|
34
|
+
ちなみに、onkeypressに変更してもエンターで改行されなかった
|
35
|
+
|
36
|
+
htmlに```@onkeydown:preventDefault="isPrEvDef"```を埋め込んで、
|
37
|
+
code部分に```bool isPrEvDef```を定義してやってイベントを止めたいときは```true```にしてそれ以外の場合は```false```にすればおk
|
38
|
+
|
39
|
+
[@on{EVENT}:preventDefault](https://docs.microsoft.com/ja-jp/aspnet/core/mvc/views/razor?view=aspnetcore-3.1#oneventpreventdefault)
|
40
|
+
|
41
|
+
> イベントの既定のアクションを禁止します。
|
42
|
+
|
43
|
+
ってのと、
|
44
|
+
|
45
|
+
[既定のアクションを止める](https://docs.microsoft.com/ja-jp/aspnet/core/blazor/event-handling?view=aspnetcore-3.1#prevent-default-actions)
|
46
|
+
|
47
|
+
> 値なしで @on{EVENT}:preventDefault 属性を指定することは、@on{EVENT}:preventDefault="true" と同じことになります。
|
48
|
+
|
49
|
+
ってところでNGキーの場合だけ入力をキャンセルしてそれ以外は入力を受け入れると判断したのでこんな形になった
|
50
|
+
ちゃうかったらごめんね
|