Ho provato questo su Galaxy SIII e il browser Android non sembra inviare l'evento paste
. Tuttavia, invia ancora l'evento input
dopo che qualcosa è stato incollato.
Se l'utente sta digitando un campo, verrà generato un evento input
per ogni lettera. Tuttavia, se sta incollando, l'evento input
verrà attivato una sola volta per l'intera stringa che è stata incollata. Sulla base di questa osservazione si può bloccare incollare in questo modo:
$('#ie').bind("input", function() {
var previousValue = $(this).data('old_value') || '',
newValue = $(this).val();
if((newValue.length - previousValue.length) > 1) {
$(this).val(previousValue);
}
$(this).data('old_value', $(this).val());
});
Troverete JSFiddle here.
Si prega di notare che questo bloccherà anche il completamento automatico e tutte le altre tecniche di input strani che funzionano in modo simile (non ne conosco nessuno).
fonte
2013-08-20 13:33:44
So che non è correlato alla domanda, ma perché disabilitare l'incolla? –
Bene, i campi di input come email di conferma, password di conferma non dovrebbero essere incollati. – CalebC
Non sono sicuro di essere d'accordo. Alcuni spunti di riflessione: [Impedire a un utente di incollare dagli Appunti in un campo modulo obbligatorio] (http://ux.stackexchange.com/q/21062/4487), [Devo consentire a un utente di copiare/incollare in una conferma campo di posta elettronica per un modulo di registrazione?] (http://ux.stackexchange.com/q/1488/4487) –