記事のターゲット
- エンターキーによる誤送信を防止したい人
- Insertを押してないのにエンターを押すと文字が消えてしまう人
背景
開発をしているとFormの送信部分でSubmitを使う方がいらっしゃると思いますが、その時に誤ってエンターキーを押すことにより意図しない送信をしてしまうことがあります。
そういったときにエンターキーを無効にする方法を紹介します。
加えて、仕事でフォーム画面を作成しているときにパスワード入力欄に文字を打った後エンターキーを押すとクリアされるという不具合?が発生したのでそのときの対策方法をメモしておこうという意味でも記事を書かせていただきます。
方法
JSの記述部分に下記を追加してください。
window.onload = function(){
document.onkeypress = enterForbidden;
function enterForbidden(){
if(window.event.keyCode == 13){
return false;
}
}
}
13という数字はキーボートに割り当てられた番号のうちエンターキーを意味しています。
なので、違う数字にすれば対応したキーを禁止することも可能ですので興味のある方はぜひ試してみてください。