入力フォームでコピペ(コピー&ペースト)を禁止する方法

入力フォームでメールアドレスを取得するときに、間違い防止のため2度入力するのはよくあります。
しかし1つ目に入力したものをコピーして2つ目にペースト(貼り付け)されてしまうと、ただユーザに入力の手間を増やすだけで、間違い防止にはなりません。

このようなことを防ぐために入力フォームでコピー&ペーストを防ぐには次のようにoncopy、onpaste、oncontextmenuを使用します。

<input oncopy="return false" onpaste="return false" oncontextmenu="return false" />

onCopy
コピーをしたときの動作。

onPaste
ペースト(貼り付け)をしたときの動作。

onContextmenu
右クリックメニューを出そうとしたときの動作。

これらをそれぞれ無効にしています。




これ以外にメールの入力フォームの形式を『全てを1つで入力する』、『 @で区切って2つの入力欄を作る』の2種類に変えてしまうというのもありますが、部分部分でコピペされると同じです。

メールアドレス
メールアドレス(再入力) @


パスワードの入力部分でtype="password"を使用している場合は、コピーはできないのでonCopy、onContextmenuを指定する必要はありません。
また*や●でパスワードは隠されるため、テキストエディタでパスワードを入力したものをコピーして、入力フォームにペースト(貼り付け)する人もいるので、onPasteを使用するのもよくないです。
このためパスワード入力欄にはコピペ禁止は不要です。

関連記事

スポンサーリンク

NCHAR関数 ユニコードから文字に変換する

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る