質問編集履歴
2
コード
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
テキストエリアでの改行削除について、貼り付け対策が上手くいきません
|
body
CHANGED
@@ -1,25 +1,31 @@
|
|
1
|
-
|
1
|
+
teetareaで改行を禁止したいのですが、貼り付け対策がうまくいきません。
|
2
2
|
|
3
|
-
下記の
|
3
|
+
ご注目いただきたいのは、下記のJSでコメントアウトしてある部分です。
|
4
4
|
|
5
|
-
|
5
|
+
「改行があったらそれを削除する」という意図で書いているのに、これがあるとテキストが入力できなくなってしまいます。
|
6
6
|
|
7
|
+
どうすれば貼り付け対策もできるでしょうか?
|
8
|
+
|
7
|
-
実際のサンプル:[https://jsfiddle.net/
|
9
|
+
実際のサンプル:[https://jsfiddle.net/t0z67sba/](https://jsfiddle.net/t0z67sba/)
|
10
|
+
|
11
|
+
|
8
12
|
```html
|
9
|
-
<div class="cancelEnter" contenteditable="true">入力時に点滅する縦棒(カーソル)が常に先頭に来てしまう。これによって新しく入力した文字が先頭に来てしまったり、全文を削除できなかったりする。</div>
|
10
|
-
<style>
|
11
|
-
|
13
|
+
<textarea class="cancelEnter">ここは改行禁止</textarea>
|
12
|
-
</style>
|
13
14
|
|
14
15
|
<script>
|
15
|
-
$('.cancelEnter').bind('keydown keyup keypress change',function(e){
|
16
|
+
$('.cancelEnter').bind('input keydown keyup keypress change',function(e){
|
16
17
|
if (e.which == 13) {
|
17
18
|
return false;
|
18
19
|
}
|
20
|
+
// 貼り付け対策のための次の改行削除コードを書くと、テキストが入力できなくなる
|
19
21
|
var replace_br = $(this).text().replace(/\r?\n/g,"");
|
20
22
|
$(this).text(replace_br);
|
21
23
|
})
|
22
24
|
</script>
|
25
|
+
|
26
|
+
<style>
|
27
|
+
textarea {width: 100%;height: 300px;}
|
28
|
+
</style>
|
23
29
|
```
|
24
30
|
|
25
31
|
###確認した環境
|
1
起こっている現象を具体的に明記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
まぁinputにすればいい話なんですけど、「contenteditable="true"」での改行削除というのはどのようにするのでしょうか?
|
2
2
|
|
3
|
-
下記の感じで書いてみたところ
|
3
|
+
下記の感じで書いてみたところ入力時に点滅する縦棒(カーソル)が常に先頭に来てしまう。というナゾの現象が発生しまして、、、
|
4
4
|
|
5
5
|
どなたかよい解決策を教えて頂けませんでしょうか。
|
6
|
+
|
7
|
+
実際のサンプル:[https://jsfiddle.net/ak3qc9z8/](https://jsfiddle.net/ak3qc9z8/)
|
6
8
|
```html
|
7
|
-
<div class="cancelEnter" contenteditable="true">
|
9
|
+
<div class="cancelEnter" contenteditable="true">入力時に点滅する縦棒(カーソル)が常に先頭に来てしまう。これによって新しく入力した文字が先頭に来てしまったり、全文を削除できなかったりする。</div>
|
8
|
-
|
9
10
|
<style>
|
10
11
|
div {background:#efefef;border:1px solid #333;padding:10px;}
|
11
12
|
</style>
|
@@ -19,4 +20,8 @@
|
|
19
20
|
$(this).text(replace_br);
|
20
21
|
})
|
21
22
|
</script>
|
22
|
-
```
|
23
|
+
```
|
24
|
+
|
25
|
+
###確認した環境
|
26
|
+
firefox最新
|
27
|
+
chrome最新
|