jQuery: Mit jQuery Copy-And-Paste von Eingabefeldern verhindern
So können Sie das Einfügen aus der Zwischenablage (Strg+C bzw. Cmd+C) mit jQuery unterdrücken.
Die erste Frage ist natürlich: Wieso sollte man sowas machen? Nun der Anwendungsfall ist ganz einfach. In einem Registrierungsformular kommt es gern man vor, dass User sich bei der E-Mail-Adresse vertippen. Das ist sehr schlecht, denn man kann so keinerleit Kontakt mit dem Nutzer herstellen. Da findige User die E-Mail-Adressen-Bestätigung per Copy&Paste ausfüllen, muss man das irgendwie unterbinden, denn ein kopierter Fehler ist immer noch ein Fehler!
Ich habe dazu ein wenig recherchiert und herausgefunden, dass jQuery bereits eine entsprechende Funktionalität mitbringt. Mit Hilfe der bind-Funktion kann man ein entsprechendes Event, z.B. “paste” anfangen, um z.B. das Einfügen aus der Zwischenablage zu unterbinden. Das Ganze sieht dann so aus:
jQuery('#email2').bind('paste', function(e) { e.preventDefault(); });
Der Funktion wird dabei das Event mit übergeben, welches man mit preventDefault() unterbinden kann. Schon ist das Einfügen, also Strg+C bzw. Cmd+C nicht mehr möglich.
Bind bietet noch verschiedene andere Events an – mit ‘copy’ kann man z.B. das kopieren aus einem Eingabefeld unterbinden.
Mitdiskutieren